Roi du Me heads the weights for Monday's Ladbrokes Irish Grand National after John Smith's Grand National entries Seabass and Apt Approach were among the 18 withdrawn at the forfeit stage on Wednesday.
Four Commanders and Groody Hill, vying for favouritism, featured among the 51 that remain, with the last horse guaranteed a run in the Fairyhouse marathon set to be either Deal Done, Fisher Bridge, Gates Of Rome, Out Now or Saddlers Storm, who all carry 10st 4lb and will learn their fate when receiving their ballot numbers.
Gigginstown House Stud, owner of Four Commanders, removed only Crash, leaving them with eight entries, while JP McManus, owner of Groody Hill, took out Arbor Supreme, keeping nine in the running. Six of each are guaranteed a run.
The only remaining entries engaged in the following Saturday's John Smith's Grand National are the Willie Mullins-trained The Midnight Club and Quiscover Fontaine, Gigginstown's Tharawaat, Saddlers Storm, Another Palm and Smoking Aces.
Victor Dartnall has decided to aim Giles Cross at the John Smith's Grand National rather than taking him to Fairyhouse for the Irish equivalent tomorrow.
The trainer believes he is more likely to get soft ground at Aintree for his Haydock Grand National Trial winner, three of whose five career victories have come on heavy ground.
"It looks as though he'll be going to Aintree now because the ground isn't soft enough for him over in Ireland," said the Devon trainer.
"It's more likely to be softer at Aintree. It is softer there at the moment and hopefully they will get some more rain.
Giles Cross, who was second to Le Beau Bai in the Welsh National, will have a different jockey on board as his regular partner, Denis O'Regan, is unable to ride at 10st 1lb.
Dartnall went on: "Denis can't do the weight and the ones at the top are staying in. It's a shame as he gets on so well with him. We've got someone in mind, but we haven't decided yet.
Exciting novice chaser Flemenstar is reported in great shape as he features among 12 entries for the Powers Gold Cup at Fairyhouse this afternoon.
The Peter Casey-trained seven-year-old has enjoyed a superb season, winning four times on the bounce over fences without being seriously troubled, and reversed form with his only conqueror Bog Warrior when scoring at Naas last time out.
Connections resisted the temptation to send the gelding to last month's Cheltenham Festival and he will instead bid for his second Grade One prize on Easter Sunday.
Casey said: "This has been the plan for him all year. He is in great form at the moment, he did his final piece of work at the Curragh on Tuesday morning and all went well.
Champion trainer Willie Mullins has two possible runners in Bishopsfurze and Call The Police.
Bishopsfurze has won twice from three starts over fences at some of Ireland's lesser tracks, while Call The Police was third in the RSA Chase at Cheltenham.
The Mouse Morris-trained Rathlin took a while to find his feet over the larger obstacles but is an interesting contender, having won his last three starts.
Donnas Palm, False Economy, Foildubh, Gift Of Dgab, Perfect Smile, Shot From The Hip, White Star Line and Whodoyouthink completed the possibles.
Lord Windermere is one of the more interesting contenders among the 26 entries for the Coolmore National Hunt Sires Ask & Getaway Novice Hurdle at Fairyhouse later today.
Jim Culloty's six-year-old impressed twice over timber before finishing fourth in the Deloitte Novice Hurdle at Fairyhouse in mid-February, and returned to winning ways in fine style at Naas a month ago.
Champion trainer Willie Mullins has a predictably strong hand in the Grade Two contest, with Earls Quarter joined by stablemates Laganbank, Pickapocketortwo, Terminal and Turban.
County Hurdle winner Alderwood could come back to novice company for Tom Mullins, while other players include Lyreen Legend, Jenari and Dedigout.
Noel Meade could run Ipsos Du Berlais, a winner at Punchestown in January but pulled up at Cheltenham in the Albert Bartlett Novices' Hurdle.
Mead said: "He does need a bit of ease in the ground and we probably won't run him unless its soft, we'll just have to monitor the situation.
Christie's Foxhunter Chase winner Salsify is set to bid for a famous double at Fairyhouse on Tuesday.
Trained by Rodger Sweeney, the seven-year-old got home by a length from Chapoturgeon in a thrilling finish at Cheltenham last month.
He is one of 27 entries for the Joseph O'Reilly Memorial Hunters Chase, which also includes Zemsky, winner of the Cheltenham event 12 months ago.
Zemsky has not run since his Cheltenham victory last year and his trainer Ian Ferguson said: "We had some problems before Christmas with splints, but they've settled down now and he has done plenty of work.
Preparations for the John Smith's Grand National meeting at Aintree next week are in full swing.
Both the Mildmay and Grand National courses are being watered and every precaution is being taken to make the action as safe as possible for horse and rider.
"We've done a bit of watering. It's been raining but we've not had a lot, probably about a millimetre and a bit," said clerk of the course Andrew Tulloch.
"After this it looks mainly dry with showers on Friday. We'll probably do more watering on Wednesday. Temperatures have cooled off quite a bit. There's some uncertainty as to what the weather is going to do next week. We'll just keep monitoring it.
"At the moment all courses are good, with good to soft places on the National course. If we can keep it round about that it would be great. If it eases a bit more I wouldn't be too worried. We'll just keep an eye on things.
The marathon contest was the subject of negative headlines last year after two horses died and others, including the winner Ballabriggs, were dismounted after the line. The dismounting was a pre-planned contingency, but the BHA conceded it was not communicated as well as it might have been to the public.
Tulloch went on: "We've put an additional pop-up irrigation system on either side of Becher's and made a wash-down unsaddling area on sand with up to 16 wash-down points, and we've got shaded areas in case it is hot. We've taken lots of precautions.
Salut Flo may skip next week's Grand National meeting and wait for either Cheltenham or Punchestown later in the month.
Trainer David Pipe wants to keep the seven-year-old to races at around two and a half miles after he made virtually all the running to win the Byrne Group Plate in tremendous style at the Cheltenham Festival.
But Pipe warns he will put Salut Flo away for the season if the ground is too quick.
"Salut Flo could next be seen in action at Aintree, although it is more likely that he will go to Cheltenham or Punchestown as there are two-and-a-half mile handicap chases there for him," the Nicholashayne handler told www.davidpipe.com.
Ted Walsh is weighing up the options for his dual bumper-winning filly Summer Star.
After running an encouraging race in defeat on her debut at Punchestown in late February, the four-year-old won by 14 lengths under the trainer's daughter Katie Walsh at Limerick.
She followed up in Listed company at the same track on Sunday and Walsh is now weighing up whether to go for the Grade One bumper at the Punchestown Festival or give his charge a run on the level.
"She's a nice filly with a good pedigree and we'll see which way we go with her," said the trainer.
"With her pedigree she could easily go and have run on the Flat, or if we decide to stick with bumpers for the time being she could go to Punchestown.
Sir Alex To Plunder Scottish National?
Sir Alex Ferguson will bid to land another piece of sporting silverware with the horse he part owns Harry The Viking a likely runner in the Coral Scottish Grand National.
The Paul Nicholls trained seven year old was named among the entries for the £180,000 race at Ayr Racecourse on Saturday April 21.
And with Manchester United not in action until the following day against Everton, Fergie may well be at Ayr to cheer on his horse.
Nicky Henderson has five possible runners including Cheltenham Gold Cup fourth Burton Port, David Pipe has entered one of the Grand National favourites Junior and also The Package, owned by David Johnson.
Cheltenham's JLT Speciality Chase winner Alfie Sherrin from Jonjo O'Neill's yard and Hennessey Gold Cup winner Carruthers are entered as is the 2010 winner of the race and last year's runner up Merigo.
For travel to any of the UK based Grand National meetings log on to www.stenaline.co.uk for all the latest offers and services.


The documentary film that analyzes the nationwide political and corporate attack on public education and public sector workers. It's the history of recent union movements in Chicago and Wisconsin, marking paths to victories, examining defeats, and exposing villains disguised as friends.
Thank you! We will notify you of Schoolidarity project updates.


Apple is now selling the View-Master Virtual Reality Starter Pack. This is the device that turns your iPhone into a virtual reality viewer in the vein of Google Cardboard. Only it's not made of cardboard, it's made of plastic. It's designed to work specifically with View-Master reels you buy from the App Store, but as mentioned, it works with any Google Cardboard content. It also comes with a sample reel. Apple began selling it earlier this week, which reminds me of Apple CEO Tim Cook saying that virtual reality was interesting during the company's Q1 quarterly conference call. Apple is also building its own virtual reality team. It's easy to imagine that selling the View-Master device is part of Apple's information-gathering process. In any event, it's $29.99, making it an inexpensive way to get a quality viewer.


Beautiful with an amazing sense of style, my latest blogger portrait features Dee, of Dee for Dana. Dee's fashion choices manage to be elegant and sophisticated while still conveying a sense of playfulness. Case in point, those impossibly sunny yellow heels she's wearing in this illustration. She's a fashionista after my own heart, because we share a love of cooking and 90's hip hop and R&B.
A gorgeous illustration Mikayla. The skirt and top look like they'd feel soft. Those shoes are amazing. I always look forward to your blog posts.
This is a stunning portrait Mikayla! I agree it takes a certain flair to pull off bright yellow heels! You've created another beautiful illustration here, with your characteristic attention to detail! I love how touchable you make the fabrics look!
Thanks so much for your sweet comment on my blog. I hope you're having a fab weekend!
You are too kind! That you so much, Sheila.


Recent surveys have shown that with new advances in technology students find library research more and more complicated. The result has been poorly researched term papers, theses and dissertations frustrating both students and professors. The University of Kansas has developed a comprehensive program of information literacy that targets Latin American Studies. One facet of this program is the development of a three-credit graduate seminar focusing on research methodology for Latin America. The course is a prerequisite for a Master's degree in Latin American Studies and one of the few courses of its type in the U.S. It is intended to help student develop and refine research skills in Latin American studies and provides and an overview of the principal research methodologies and resources necessary for the study of Latin America. The course covers the development of research techniques and use of resources such as primary documents, statistical sources, archival and manuscript collections, television news, official publications, and bibliographic and other electronic databases. Students also learn to evaluate critically various types of information on Latin America. The course uses a series of case study scenarios designed to reinforce various research techniques. Case study formats vary widely from creating a business prospectus or television documentary to a mock trial or debate format. Each case study is set up to encourage technology integration including film, audio, internet resources and online tutorials. An assessment tool administered during the first week has also been developed. A second facet of the program centers on the redesign of a 300-level Spanish composition and grammar course, a required for students majoring in Spanish. The redesign of this course grew out of dissatisfaction with its current instructional strategies and a desire to include integrated technology components. Part of the retooling required the creation of a curricular library component. Two library modules were designed that consist of online tutorials, library assignments, and large lecture sessions which integrated Personal Response Systems. The modules introduce the student to basic library resources in Spanish and the use of the online library catalog and databases. The information literacy programs designed to target Latin Americanists have been highly successful and received praise from librarians and teaching faculty alike. Exit interviews with graduate students receiving Master's Degrees in Latin American studies have shown that the graduate seminar on research methodology was far and away the most useful and popular course of the curriculum. Likewise student surveys and comments have shown that students felt their confidence and research skills were greatly enhanced by the 300-level library components.


HTML code allows to embed General Motors logo in your website.
General Motors logo image sizes: 1024 x 1024 pixels. Format: jpg. Filesize: 346 KB.
Please warn us if you consider General Motors logo to be incorrect, obsolete or having wrong description.


'V' NECK TOP, Sleeveless, Zipped Front, STUDDED.
ANKLE LENGTH BUST CUP DRESS.
ANKLE LENGTH BUST CUP DRESS, Zipped Front with Buckled Shoulder Straps.
ANKLE LENGTH G-CUP TIGHT DRESS.
ANKLE LENGTH G-CUP TIGHT DRESS with Shoulder Straps.
ANKLE LENGTH MISTRESS DRESS with Bust Cups.
ANKLE LENGTH MISTRESS DRESS with Zipped Bust Cups.
ANKLE LENGTH MISTRESS DRESS with Flared Hem.
ANKLE LENGTH MISTRESS DRESS with Flared Hem & Bust Cups.
ANKLE LENGTH MISTRESS DRESS with Flared Hem & Gathered Sleeves.
ANKLE LENGTH MISTRESS DRESS with Flared Hem, Gathered Sleeves & Bust Cups.
ANKLE LENGTH MISTRESS DRESS with Flared Hem, Sleeveless.
ANKLE LENGTH MISTRESS DRESS with Flared Hem & Bust Cups, Sleeveless.


text:
Q: How to achieve atomicity in Mongo DB? I have 2 different scenarios.
1)  I want to update 2 documents same time or none incase of failure of first document save/update. What kind of atomicity feature does MongoDB provides?
2)  I want to update (overwrite) a document with latest data keeping same index/primary key. Currently I am doing this by deleting an existing document and again creating one with same index key, how can I achieve this without deleting existing document with same index key?

redpajama_set_name: RedPajamaStackExchange


This piece only comes in once in a life time. A truly remarkable treasure, this incredible neckpiece was handcrafted in Rajasthan, India. Handed down through the family, these pieces were traditionally worn in ceremony. Laden with love, this heirloom is authentic vintage, and completely one of a kind.


text:
Group Picked to Run Voucher Program for D.C. Students
By John Gehring — March 31, 2004 3 min read
A local nonprofit group will administer the federally financed voucher program approved for the nation's capital by Congress in January, U.S. Secretary of Education Rod Paige and District of Columbia Mayor Anthony A. Williams announced last week.
The Washington Scholarship Fund already provides more than 1,000 students from the District of Columbia with privately financed scholarships to attend private schools. It was selected after an application process directed by the U.S. Department of Education's office of innovation and improvement, in partnership with the mayor's office.
"We have selected a credible, capable, and competent administrator," Mr. Paige said at a March 24 press conference here that was also attended by Peggy Cooper Cafritz, the president of the city's board of education, and other political leaders.
Mr. Paige praised the Washington Scholarship Fund's "stellar application" and proven track record in managing a scholarship program. The fund, founded a decade ago by a group of local business and community leaders, is the largest and oldest granter of privately underwritten scholarships for K-12 students in the District of Columbia.
"Today, with this announcement, I believe we are witnessing history," Mr. Paige said. "This is a defining moment for American education, a milestone of achievement. For each of these students, this is educational emancipation. What happens here in D.C. will be observed across the world. We must make this a model."
Although the voucher program is sure to attract attention from cheerleaders, critics, and researchers, the scope of the program is small.
Using a lottery system, about 2,000 Washington students from low-income families will be awarded up to $7,500 a year in tuition, fees, and transportation costs to attend private schools, either secular or religious, of their choice. Some $12 million in scholarship funds will be available to be used beginning in the fall for students in grades K-12.
Students who attend public schools that have been identified as needing improvement or correction will have priority in receiving the scholarships.
The school choice program is a five-year pilot project that will be studied by an outside evaluator selected by the Education Department. As of last week, no evaluator had been selected.
Sally J. Sacher, the president and chief executive officer of the Washington Scholarship Fund, said her organization would begin a public-information campaign to notify families about the program. In addition to informational meetings, it plans to advertise, send mailings to families, and conduct a door- to-door campaign in high-priority neighborhoods, officials said.
The scholarship fund will work with other local nonprofit groups, including Capital Partners for Education, D.C. Parents for School Choice, and the Greater Washington Urban League.
"We are excited and honored to have this chance to be a part of opening more doors for D.C. schools, students, and families," Ms. Sacher said.
Mayor Williams, a Democrat who had supported the voucher plan on Capitol Hill, acknowledged the political challenges faced in pushing for such a program in the city. The effort sparked intense debate among members of Congress and among local and national education leaders. ("Federal Plan for Vouchers Clears Senate," Jan. 28, 2004.)
All of the members of the District of Columbia's school board—except for Ms. Cafritz—objected to the plan. The National School Boards Association and the National Education Association also spoke out against the measure.
"This has been a long road, and it will continue to be tough, but we have accomplished a lot," Mr. Williams said.
Ms. Cafritz explained why she was ultimately persuaded to back the measure.
"I did it because I hear all this talk about 'children first,' and I know that the truth of the matter is that educated children are first, and whatever we can do to advance one child more rapidly, we have to do," she said.
When the voucher plan is up and running, Washington will join Milwaukee and Cleveland as cities in which students can receive publicly financed tuition vouchers to attend private schools.
Through either direct state vouchers or tax credits for donors, Florida offers private school tuition aid to students in the most underperforming public schools, some low- income families, and children with disabilities.
A voucher program adopted by the Colorado legislature has been put on hold as a legal battle continues. In Utah, meanwhile, the governor vetoed a voucher plan last week. ("Gov. Walker Turns Down Voucher Bill," this issue.)
John Gehring
Vouchers District of Columbia
Students and teachers from East High School in Salt Lake City walk out of school on Jan. 25, 2023, to protest legislation that would create private-school vouchers in the state. Several years of pandemic restrictions and curriculum battles have emboldened longtime advocates of funneling public funds to private and religious schools in statehouses throughout the country.
Rick Egan/The Salt Lake Tribune via AP
School Choice & Charters The Push for School Choice Is Accelerating
Libby Stanford, January 27, 2023
School Choice & Charters Charter School Governance Shapes Those Schools' Approach to Equity
New research finds that the entities governing charters influence the schools' commitment to equity.
Students head back to their classrooms at Somerset Academy charter school in Miami in December.
Rebecca Blackwell/AP
School Choice & Charters Q&A Voucher Programs Gain Strength With Help From the Courts, An Expert Says
A school choice expert explains how recent rulings could prevent future voucher programs from getting blocked by opponents.
Mark Lieberman
E+/Getty
School Choice & Charters Charter School Enrollment Holds Steady After Big Early Pandemic Growth
The numbers show that most students who left their district schools in the first year of the pandemic did not return.
urfinguss/iStock/Getty
School Choice & Charters Federal Funding and Charter School Closures: What the Latest Government Data Show
The Government Accountability Office examined closure rates over 15 years and $2.5 billion of federal funding.
DigitalVision Vectors/Getty

redpajama_set_name: RedPajamaCommonCrawl


text:
Why The Makeup Wipe Status Quo Will Get Wiped Out
In a lighthearted Harper's Bazaar video on her nighttime skincare routine posted in August of last year, Rihanna weighed in on a serious topic: the effect makeup wipes are having on the environment. "I used to use a lot of makeup wipes, a lot, and I didn't really realize what that was doing to the planet," she said. "And, so, I think it's kind of a wrap for makeup wipes."
When the "Umbrella" singer, who singlehandedly changed the conversation about foundation shade ranges, calls a product over, the beauty industry should be listening—and it is. The single-use makeup wipes category is undergoing a transformation as brands selling the throwaway sheets transition to sustainable materials and emerging players pop up to provide longer-lasting substitutes for traditional wipes.
The transformation is driven in part by mounting consumer interest in lessening the environmental damage wrought by products, but also by retailers and governments taking action. Beginning in 2022, wipes sold in the European Union with plastic content will have to divulge that they contain plastic and can't be flushed down the toilet. The move is intended to prevent plastics from entering into and hurting marine ecosystems.
In September 2019, Holland & Barrett became the first retailer in the United Kingdom to ban wipes from its assortment. Joanna Cooke, director of beauty and sports nutrition at the health and beauty chain, was inspired to push for the ban after reducing her personal environmental footprint by shopping at local stores and buying zero-waste merchandise. In the U.K., recognition of the deleterious consequences of wipe overload swelled after a bus-sized fat berg or mass made up to a great extent of wipes and diapers clogged the London sewer.
"I always thought that we would get a positive reaction from customers—and we did," says Cooke. "The awareness of all of the environmental issues caused by the amount of waste we all produce has been massively increasing in profile over the last couple of years," says Cooke. "Lots of people are happy to switch their purchasing to more environmentally friendly alternatives once they know they exist."
British retailers The Body Shop and Selfridges followed Holland & Barrett's lead in prohibiting wipes. In the United States, retailer momentum in the anti-wipes area has been slower. However, it's picking up a bit of speed. As of June this year, Credo is eliminating single-use plastics, a category that encompasses wipes in its definition. Mia Davis, VP of sustainability and impact at Credo, says wipes will be replaced by reusable cloths or pads.
Face Halo recently rolled out to Ulta Beauty stores nationwide with its reusable makeup removers. In total, it's available at over 5,000 retail doors globally. Preceding Ulta Beauty, Face Halo launched at Liberty London, Harrods, Selfridges and Net-a-Porter.
"There has always been a too small subset of consumers that are aware of product and packaging's impact on the environment, but I think that many more people are starting to digest that our consumer choices really have an impact," she says. "The amount of resources that beauty products alone take to create and the amount of waste generated along the way and at the 'end of life' is really staggering."
There's been considerable press attention paid to environmental concerns associated with sheet masks—Vogue compared them to plastic straws in a 2019 article, and Women's Wear Daily did the same a year later—but sheet mask sales are a fraction of wipe sales. According to Industry Research Co., global sales of sheet masks are expected to advance at a compound annual growth rate of 8.47% to hit $1.2 billion in sales in 2023. Through 2025, the firm projects global sales of facial wipes to proceed at a CAGR of nearly 10% to reach $3.65 billion—and that's just facial wipes. Allied Market Research forecasts the global personal care wipes market will be worth almost $24 billion in 2023, up from $16.77 billion in 2016.
Data on consumer usage further reveals the pervasiveness of wipes. Consumer information pulled by beauty insights firm Lucky Analytics last year for Beauty Independent shows that 86% of beauty consumers reported they use wipes. A third of beauty consumers said they use makeup wipes every day and another third said they use them one to three times a day. The primary reason for makeup wipe usage they cited is to remove waterproof makeup, and 72% of beauty consumers said they turn to makeup wipes for that reason. Drugstore staples Olay, Neutrogena and Aveeno are favorite brands for makeup wipes among beauty consumers.
The substantial sales and usage of wipes underscore that beauty and personal care brands have a ton at stake in the preservation of the segment dominated to date by plastic-packed wipes. Think Neutrogena's Makeup Remover Cleansing Towelettes, Clinique's Take The Day Off Micellar Cleansing Towelettes and Cetaphil's Gentle Makeup Removing Wipes. A statistic bandied about is that 20 million pounds of single-use wipes are discarded daily in the U.S., and Lizzy Pike, co-founder and executive director of makeup wipe alternative Face Halo, figures 90% of them aren't biodegradable.
"People probably have no idea that most of them are made out of a plastic because they seem so soft and innocent," says Susan Bush, principal at circular economy consultancy Circular Matters. She details wipes usually consist of polyester or polypropylene, explaining polypropylene is "the kind of plastic that a yogurt container is made of." The polyester or polypropylene is often mixed with wool, cotton or other fibers. Because of the mixed material nature of typical wipes, they aren't recyclable, says Bush, "not to mention to sort them at the recycling facility would be a pain."
"People probably have no idea that most of them are made out of a plastic because they seem so soft and innocent."
Consumers can look at and feel plastic bottles to determine they're constructed from plastic. It's not as easy with wipes. Only discerning eyes may be able to tell what's actually in them. Brands disclose the ingredients they infuse into wipes' fibers, but, as Amanda McIntosh, founder of mitt cleansing specialist Take My Face Off, points out, "There's no requirement for wipes companies to list fiber content. If they don't mention it, you can guarantee they're spun plastic."
Environmental qualms haven't stopped some brands from releasing conventional makeup wipes. A month prior to Rihanna's denunciation of wipes, One/Size, the brand led by influencer Patrick Starrr that's sold along with Fenty Beauty at Sephora, launched Go Off, a packet of what it describes as the "juiciest makeup remover wipes" on the market that banish a full face of makeup.
While there are eco-conscious exceptions such as Elate Cosmetics, Axiology, Athr Beauty, Pacifica Beauty and Credo-owned Exa Beauty, Rebecca Bartlett, founder and creative director of Bartlett Brands, an agency that's worked with Exa Beauty, Biossance, Eleven and Paula's Choice, says the march of customary makeup wipes persists because color cosmetics brands, particularly those with an Instagram-style glamour bent, have lagged skincare and personal care brands in the sustainability realm. To them, the notion of sustainable wipes may not mesh with the performance necessary to remove dramatic makeup, although Raj Prakash, CEO of wipes manufacturer Anthem, maintains there isn't a performance discrepancy between biodegradable and traditional makeup wipes.
Bartlett decries mainstream color cosmetics as "the fast fashion of the beauty industry." Discussing One/Size, she says its customer, "a gen Z/millennial super beauty maximalist, is definitely aware of environmental issues—you'd have to be living under a rock to not hear about trash in the ocean—but may not be aware of how little most color cosmetics brands have done to address the issue."
Within the beauty industry, brands are definitely cognizant of wipe materials. Last year, Prakash discloses Anthem registered triple-digit growth in its makeup wipe business, and new orders were entirely for biodegradable versions. The biodegradable wipes don't have polyester or polypropylene and, instead, are completely constructed out of viscose or cellulose from trees or plants. The biodegradable wipes manufactured by Anthem biodegrade in 90 days. Today, for brands, they are priced 30% to 40% above wipes with plastic in them and, at retail, Prakash approximates biodegradable wipes carry a 15% to 20% price premium. He anticipates the prices will shrink in the near future, though, and is considering making a lower-cost option that biodegrades in 30 days available.
Since its debut in December, bamboo makeup removal pad brand Clean Circle's sales have been doubling monthly. It will soon enter Asos's selection. TOLA SEAK
"I don't see the wipes business by any means reducing. I just see it continuing to grow and, especially after COVID and everything that happened last year, now people will make it the norm to carry disinfecting products in their pockets and when they travel," says Prakash. "That behavior is going to stick for years to come, so I'm bullish on the wipes business globally. As sustainable materials become more and more accessible and affordable, that will drive even more use."
Biodegradable wipes, of course, must be placed in a position to biodegrade. "After you throw them away, the wipes have to be in ideal conditions in order to degrade quickly," says Karen Reznik, co-founder and product developer at beauty brand consultancy Athena Beauty Group. "I don't think most people are aware of that. We can improve the situation through education." Mary Futher, founder of Kaia Naturals, a clean personal care brand selling bamboo The Vitamin Cleanse wipes that are biodegradable and compostable, agrees that education is crucial. She says, "I do think that consumers need to go the extra mile of ensuring that they do not end up in the water stream or a landfill. So, it really comes down to making that extra effort to compost or ensure they land in a city composter."
Additionally, as biodegradable wipes break down, there could be ingredients in them not favorable to the environmental that seep into it. "Most people are focused on the sustainability of the wipe itself, losing the importance of the other ingredients getting flushed down the toilet," says Conscious Coconut founder Danielle Conte, noting her brand's biodegradable bamboo wipes feature coconut oil that's "completely consumable and certified organic, which doesn't harm the environment whatsoever." Sara Marino, a green living expert and blogger behind Tree Hugger In Heels, says, "My go-to brand is Beautycounter for makeup wipes because they are biodegradable and only made with safer ingredients. Since wipes have to stay moist and packaged so long, they often have a lot of crazy preservatives in them."
For moistness purposes, eco-friendly packaging can be a conundrum for wipes purveyors. Because wipe packaging is commonly flexible and has to be hermetically sealed, Prakash comments there are fewer sustainable packaging choices on the market for wipes than is generally the case for beauty products. Thankfully for wipes brand seeking to be sustainable, the packaging landscape is evolving as greener packaging offerings multiply. "It's a matter of trialing, testing and seeing if they work over the long term," says Prakash. "That's very important."
Beauty enthusiasts may be steering clear of wipes for motivations that have nothing to do with the environment. There's an expanding group of skincare professionals and influencers arguing wipes are bad for skin. Aesthetician and holistic beauty expert Allison Marks says, "I do not recommend makeup removal or cleansing wipes. They can be made of materials that can be abrasive and irritate the skin. I also find clients think, if they use a wipe, they do not need to cleanse their skin after using the wipe. I recommend double cleansing to thoroughly cleanse the face."
"There is an opportunity to continue innovating in this space as over three-quarters of beauty consumers do want more eco-friendly solutions."
For consumers avoiding makeup wipes for skin or environmental concerns, there are reusable alternatives from brands such as Take My Face Off, Croon, Face Halo, Clean Circle, The Original MakeUp Eraser, Yuni and LastObject. Sales of the reusable products remain tiny relative to sales of disposable makeup wipes, but they're gaining. Clean Circle debuted in December, and sales of its bamboo makeup remover rounds have been doubling monthly. The brand will soon arrive in Asos's selection.
"With Credo making that stance on [single-use plastics] and more and more brands coming out with their own innovative ways to replace single-use sheet masks and wipes, it's definitely going to shift in the next few years with people being more thoughtful about waste," says Lena Chao, founder of Clean Circle. "I think more retailers are going to start moving that way, too, it's just about who is agile enough to do it fast."
Face Halo recently rolled out to Ulta Beauty stores nationwide with its reusable makeup removers. In total, it's available at over 5,000 retail doors worldwide. Preceding Ulta Beauty, Liberty London, Harrods, Selfridges and Net-a-Porter decided to stock the brand. Around the globe, Face Halo sells 1.4 reusable makeup removers per minute.
Pike suggests the biggest hurdle to getting consumers on board with reusable makeup removers is they simply don't know about them. She says, "To be honest, our research shows that the U.S. does not have as much awareness about makeup wipes and the harm they do to the environment yet. The U.K. and Australia are all about sustainable beauty, and the beauty editors in these countries just want to talk about this."
Once consumers know about makeup wipe alternatives, cost can be an impediment to the adoption of them. A pack of three Face Halo reusable makeup removers is $22. Neutrogena's wipes are priced at $4.99 online at Target for 25-count pack. To help convince consumers to swap their wipes for reusable makeup removers, Face Halo shares that its remover is the equivalent of 500 makeup wipes. The removers last up to 200 machine washes. Face Halo calculates it's kept a billion makeup wipes from going to landfills.
Yuni Beauty sells two alternatives to conventional plastic wipes: biodegradable Shower Sheets and cleansing facial pad Clean Sweep. Nesli Ostrowski
"If you are using a single-use product, that can add up to be very expensive as well and, once you become aware of the fact of how much time they take to break down and that they go into landfills, because of the guilt that you have from putting a makeup wipe in the toilet, you have the thought in your head, 'There must be a better way,'" says Pike. A plastic wipe is estimated to take 100 years to decompose.
Reusable makeup removers aren't perfect from an environmental perspective. Textiles, including reusable makeup removers and makeup wipes, require water-intensive manufacturing, and reusable makeup removers require extra water from washing at home. "The main reason why people do not use and reuse the same facial cloth is because of bacteria and fungus that thrive on wet surfaces," says Futher. "And does daily cloth washing really reduce the environmental footprint?"
On top of the water questions, the materials in reusable makeup removers can be problematic. Emmanuel Rey, founder and CEO of Yuni, which has a synthetic microfiber cleansing facial pad and biodegradable body wipes in its product collection, says, "Most of the cotton pads that you buy on the market are not organic, and cotton is one of the plants that uses the most pesticides in the world. For the environment, it's not that great either." And the discarding of reusable wipes has to be taken into account. Face Halo customers can send back their reusable makeup removers to the brand to be upcycled.
As consumers' understanding of the environment and makeup wipes escalates, nobody believes they will want to backtrack to making the least environmentally responsible makeup remover purchase. Even Lucky Analytics' data exposing the steadfastness of makeup wipe dependence shows signs that sustainability could be a factor in makeup wipe purchases going forward.
Lucky Analytics asked beauty consumers, "How important to you is sustainability/environmental safety when choosing a wipe?" In response, 44% said "very important" and 34% said "somewhat important." Doreen Bloch, founder and CEO of the firm, says, "So, there is an opportunity to continue innovating in this space as over three-quarters of beauty consumers do want more eco-friendly solutions."
The movement toward more eco-friendly makeup wipes is driven in part by mounting consumer interest in lessening the environmental damage wrought by products, but also by retailers and governments taking action. In the United Kingdom, Selfridges, Holland & Barrett and The Body Shop have banned wipes. In the United States, they will be gone from Credo by June.
Beginning in 2022, wipes sold in the European Union with plastic content will have to reveal that they contain plastic and can't be flushed down the toilet. The move is intended to prevent plastics from hurting marine ecosystems.
The wipes market is growing. Industry Research Co. projects global sales of facial wipes to proceed at a compound annual growth rate of nearly 10% to reach $3.65 billion in 2025.
To date, the wipes market has been dominated by products with polyester or polypropylene. Biodegradable options exclude those materials and contain viscose or cellulose.
Brands disclose the ingredients they infuse into wipes' fibers, but, as Amanda McIntosh, founder of mitt cleansing specialist Take My Face Off, points out, "There's no requirement for wipes companies to list fiber content. If they don't mention it, you can guarantee they're spun plastic."
Biodegradable wipes, of course, must be placed in a position to biodegrade. "After you throw them away, the wipes have to be in ideal conditions in order to degrade quickly," says Karen Reznik, co-founder and product developer at beauty brand consultancy Athena Beauty Group.
There are reusable alternatives to makeup wipes from brands such as Take My Face Off, Croon, Face Halo, Clean Circle, The Original MakeUp Eraser, Yuni and LastObject. Sales of the products remain tiny relative to disposable makeup wipes, but they're gaining.
Reusable makeup removers aren't environmentally perfect. They can require a lot of water in production and from repeated washing, and the materials they are made out of can be cultivated in environmentally damaging ways.
As consumers become more aware of environmental issues, nobody in the beauty industry believes that they will be retreating from biodegradable wipes or reusable alternatives to less eco-friendly options. The open question is which brands and retails can position themselves to take most advantage of the sustainable evolution of makeup removers.
Beneath the Surface How Spas Can Serve Trans And Nonbinary People
No Stupid Questions Can Skincare Shift Away From Promising Immediate Results?


Well-trained employees are a crucial factor in any company's success. Skills development and expert knowledge make companies competitive and innovative. With our globally available training courses for industry, we help you achieve these goals – with practical experience, innovative learning methods, and a concept that's tailored to the customer's specific needs.
SITRAIN training is conducted by certified experts with extensive hands-on experience. Practical exercises on specially developed training equipment and high-quality course documentation ensure successful learning.
Low-voltage switching technology needs economical solutions that can be easily integrated into control panels, distribution systems or decentralized systems, and communicate perfectly with each other. The answer: SIVACON, ALPHA and SENTRON.
The portfolio covers the entire range of KNX-certified courses in both English and German. The course program focuses on designing, commissioning, and maintenance of "KNX" building system technology plant.
On-site training at the manufacturer's premises ensures you gain the expertise you need to use these products to best advantage.
Industry is subject to rapid developments that are being further accelerated by digitization. Today's technologies are so complex that continuing education and regular training on training devices are essential in order to remain up to date. This trend also makes it necessary to rethink learning. New training methods are needed that are flexibly applicable worldwide and make it possible to train under the guidance of certified experts.
The Siemens Mechatronic Systems Certification Program is the international, industry standard comprehensive skills certification in mechatronic systems offered together with partner schools worldwide.
Qualification is becoming increasingly important – for employers and employees alike. Therefore SITRAIN offers qualified training courses for the entire range of industrial products and solutions from Siemens, with subsequent certification to verify the knowledge gained.
Continuous professional training provided by experts is key to strengthening your company's competitive position and innovative power. With our globally leading training offer, competent training consultancy and instructors with extensive practical experience we will support you in achieving this goal – with a targeted concept exactly tailored to your requirements.
Stay up-to-date on product highlights, success stories, events and trends related SITRAIN - Digital Industry Academy.
For questions during the registration process please call our course office!
Remote Learning@SITRAIN - Digital. Worldwide. Certified.


text:
/******************************************************************************
 * NOTE 1:  This project provides two demo applications.  A simple blinky style
 * project, and a more comprehensive test and demo application.  The
 * mainCREATE_SIMPLE_BLINKY_DEMO_ONLY setting in main.c is used to select
 * between the two.  See the notes on using mainCREATE_SIMPLE_BLINKY_DEMO_ONLY
 * in main.c.  This file implements the comprehensive test and demo version.
 *
 * NOTE 2:  This file only contains the source code that is specific to the
 * full demo.  Generic functions, such FreeRTOS hook functions, and functions
 * required to configure the hardware, are defined in main.c.
 ******************************************************************************
 *
 * main_full() creates all the demo application tasks and software timers, then
 * starts the scheduler.  The WEB documentation provides more details of the
 * standard demo application tasks.  In addition to the standard demo tasks, the
 * following tasks and tests are defined and/or created within this file:
 *
 * "LCD" task - the LCD task is a 'gatekeeper' task.  It is the only task that
 * is permitted to access the display directly.  Other tasks wishing to write a
 * message to the LCD send the message on a queue to the LCD task instead of
 * accessing the LCD themselves.  The LCD task just blocks on the queue waiting
 * for messages - waking and displaying the messages as they arrive.
 *
 * "Check" timer - The check software timer period is initially set to three
 * seconds.  The callback function associated with the check software timer
 * checks that all the standard demo tasks, and the register check tasks, are
 * not only still executing, but are executing without reporting any errors.  If
 * the check software timer discovers that a task has either stalled, or
 * reported an error, then it changes its own execution period from the initial
 * three seconds, to just 200ms.  The check software timer callback function
 * also writes a status message to the LCD (via the LCD task).  If all the demo
 * tasks are executing with their expected behaviour then the check task writes
 * a count of the number of times the high frequency interrupt has incremented
 * ulHighFrequencyTimerInterrupts - which is one in every 20,000 interrupts.
 *
 * "Register test" tasks - These tasks are used in part to test the kernel port.
 * They set each processor register to a known value, then check that the
 * register still contains that value.  Each of the tasks sets the registers
 * to different values, and will get swapping in and out between setting and
 * then subsequently checking the register values.  Discovery of an incorrect
 * value would be indicative of an error in the task switching mechanism.
 *
 * By way of demonstration, the demo application defines
 * configMAX_SYSCALL_INTERRUPT_PRIORITY to be 3, configKERNEL_INTERRUPT_PRIORITY
 * to be 1, and all other interrupts as follows:
 *
 *	+ The UART is allocated a priority of 2. This means it can interrupt the
 *    RTOS tick, and can also safely use queues.
 *  + Two timers are configured to generate interrupts just to test the nesting
 *    and queue access mechanisms. These timers are allocated priorities 2 and 3
 *    respectively. Even though they both access the same two queues, the
 *    priority 3 interrupt can safely interrupt the priority 2 interrupt. Both
 *    can interrupt the RTOS tick.
 *  + Finally a high frequency timer interrupt is configured to use priority 4 -
 *    therefore kernel activity will never prevent the high frequency timer from
 *    executing immediately that the interrupt is raised (within the limitations
 *    of the hardware itself). It would not be safe to access a queue from this
 *    interrupt as it is above configMAX_SYSCALL_INTERRUPT_PRIORITY.
 *
 * See the online documentation for this demo for more information on interrupt
 * usage.
 */

/* Standard includes. */
#include <stdio.h>

/* Scheduler includes. */
#include "FreeRTOS.h"
#include "task.h"
#include "queue.h"
#include "timers.h"

/* Demo application includes. */
#include "partest.h"
#include "blocktim.h"
#include "flash_timer.h"
#include "semtest.h"
#include "GenQTest.h"
#include "QPeek.h"
#include "lcd.h"
#include "comtest2.h"
#include "timertest.h"
#include "IntQueue.h"

/*-----------------------------------------------------------*/

/* The period after which the check timer will expire, in ms, provided no errors
have been reported by any of the standard demo tasks.  ms are converted to the
equivalent in ticks using the portTICK_RATE_MS constant. */
#define mainCHECK_TIMER_PERIOD_MS			( 3000UL / portTICK_RATE_MS )

/* The period at which the check timer will expire, in ms, if an error has been
reported in one of the standard demo tasks.  ms are converted to the equivalent
in ticks using the portTICK_RATE_MS constant. */
#define mainERROR_CHECK_TIMER_PERIOD_MS 	( 200UL / portTICK_RATE_MS )

/* The priorities of the various demo application tasks. */
#define mainSEM_TEST_PRIORITY				( tskIDLE_PRIORITY + 1 )
#define mainBLOCK_Q_PRIORITY				( tskIDLE_PRIORITY + 2 )
#define mainCOM_TEST_PRIORITY				( tskIDLE_PRIORITY + 2 )
#define mainINTEGER_TASK_PRIORITY           ( tskIDLE_PRIORITY )
#define mainGEN_QUEUE_TASK_PRIORITY			( tskIDLE_PRIORITY )

/* The LED used by the comtest tasks.  mainCOM_TEST_LED + 1 is also used.
See the comtest.c file for more information. */
#define mainCOM_TEST_LED					( 4 )

/* Baud rate used by the comtest tasks. */
#define mainCOM_TEST_BAUD_RATE				( 115200 )

/* Misc. */
#define mainDONT_BLOCK						( 0 )

/* Dimension the buffer used to hold the value of the high frequency timer
count when it is converted to a string. */
#define mainMAX_STRING_LENGTH				( 20 )

/* The frequency at which the "fast interrupt test" interrupt will occur. */
#define mainTEST_INTERRUPT_FREQUENCY		( 20000 )

/* The number of timer clocks expected to occur between each "fast interrupt
test" interrupt. */
#define mainEXPECTED_CLOCKS_BETWEEN_INTERRUPTS ( ( configCPU_CLOCK_HZ >> 1 ) / mainTEST_INTERRUPT_FREQUENCY )

/* The number of nano seconds between each core clock. */
#define mainNS_PER_CLOCK ( ( unsigned long ) ( ( 1.0 / ( double ) ( configCPU_CLOCK_HZ >> 1 ) ) * 1000000000.0 ) )

/* The number of LEDs that should be controlled by the flash software timer
standard demo and the LED to be toggle by the check task.  The starter kit only
has three LEDs so when the demo is configured to run on the starter kit there
is one less flash timer so the check task can use the third LED. */
#ifdef PIC32_STARTER_KIT
	#define mainNUM_FLASH_TIMER_LEDS			( 2 )
	#define mainCHECK_LED						( 2 )
#else
	#define mainNUM_FLASH_TIMER_LEDS			( 3 )
	#define mainCHECK_LED						( 7 )
#endif

/*-----------------------------------------------------------*/

/*
 * The check timer callback function, as described at the top of this file.
 */
static void prvCheckTimerCallback( xTimerHandle xTimer );

/*
 * It is important to ensure the high frequency timer test does not start before
 * the kernel.  It is therefore started from inside a software timer callback
 * function, which will not execute until the timer service/daemon task is
 * executing.  A one-shot timer is used, so the callback function will only
 * execute once (unless it is manually reset/restarted).
 */
static void prvSetupHighFrequencyTimerTest( xTimerHandle xTimer );

/*
 * Tasks that test the context switch mechanism by filling the processor
 * registers with known values, then checking that the values contained
 * within the registers is as expected.  The tasks are likely to get swapped
 * in and out between setting the register values and checking the register
 * values.
 */
static void prvRegTestTask1( void *pvParameters );
static void prvRegTestTask2( void *pvParameters );

/*-----------------------------------------------------------*/

/* The queue used to send messages to the LCD task. */
static xQueueHandle xLCDQueue;

/* Variables incremented by prvRegTestTask1() and prvRegTestTask2() respectively on
each iteration of their function.  This is used to detect either task stopping
their execution.. */
volatile unsigned long ulRegTest1Cycles = 0, ulRegTest2Cycles = 0;

/*-----------------------------------------------------------*/

/*
 * Create the demo tasks then start the scheduler.
 */
int main_full( void )
{
xTimerHandle xTimer = NULL;

	/* Create the LCD task - this returns the queue to use when writing
	messages to the LCD. */
	xLCDQueue = xStartLCDTask();

	/* Create all the other standard demo tasks. */
	vStartLEDFlashTimers( mainNUM_FLASH_TIMER_LEDS );
    vCreateBlockTimeTasks();
    vStartSemaphoreTasks( mainSEM_TEST_PRIORITY );
    vStartGenericQueueTasks( mainGEN_QUEUE_TASK_PRIORITY );
    vStartQueuePeekTasks();
	vStartInterruptQueueTasks();

	/* Create the tasks defined within this file. */
	xTaskCreate( prvRegTestTask1, ( const signed char * const ) "Reg1", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );
	xTaskCreate( prvRegTestTask2, ( const signed char * const ) "Reg2", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY, NULL );

    /* The PIC32MX795 uses an 8 deep fifo where TX interrupts are asserted
	whilst the TX buffer is empty.  This causes an issue with the test driver so
	it is not used in this demo */
	#if !defined(__32MX795F512L__)
		vAltStartComTestTasks( mainCOM_TEST_PRIORITY, mainCOM_TEST_BAUD_RATE, mainCOM_TEST_LED );
	#endif

	/* Create the software timer that performs the 'check' functionality, as
	described at the top of this file. */
	xTimer = xTimerCreate( 	( const signed char * ) "CheckTimer",/* A text name, purely to help debugging. */
							( mainCHECK_TIMER_PERIOD_MS ),		/* The timer period, in this case 3000ms (3s). */
							pdTRUE,								/* This is an auto-reload timer, so xAutoReload is set to pdTRUE. */
							( void * ) 0,						/* The ID is not used, so can be set to anything. */
							prvCheckTimerCallback				/* The callback function that inspects the status of all the other tasks. */
						);

	if( xTimer != NULL )
	{
		xTimerStart( xTimer, mainDONT_BLOCK );
	}

	/* A software timer is also used to start the high frequency timer test.
	This is to ensure the test does not start before the kernel.  This time a
	one shot software timer is used. */
	xTimer = xTimerCreate( ( const signed char * ) "HighHzTimerSetup", 1, pdFALSE, ( void * ) 0, prvSetupHighFrequencyTimerTest );
	if( xTimer != NULL )
	{
		xTimerStart( xTimer, mainDONT_BLOCK );
	}

	/* Finally start the scheduler. */
	vTaskStartScheduler();

	/* If all is well, the scheduler will now be running, and the following line
	will never be reached.  If the following line does execute, then there was
	insufficient FreeRTOS heap memory available for the idle and/or timer tasks
	to be created.  See the memory management section on the FreeRTOS web site
	for more details. */
	for( ;; );
}
/*-----------------------------------------------------------*/

static void prvRegTestTask1( void *pvParameters )
{
extern void vRegTest1( volatile unsigned long * );

	/* Avoid compiler warnings. */
	( void ) pvParameters;

	/* Pass the address of the RegTest1 loop counter into the test function,
	which is necessarily implemented in assembler. */
	vRegTest1( &ulRegTest1Cycles );

	/* vRegTest1 should never exit! */
	vTaskDelete( NULL );
}
/*-----------------------------------------------------------*/

static void prvRegTestTask2( void *pvParameters )
{
extern void vRegTest2( volatile unsigned long * );

	/* Avoid compiler warnings. */
	( void ) pvParameters;

	/* Pass the address of the RegTest2 loop counter into the test function,
	which is necessarily implemented in assembler. */
	vRegTest2( &ulRegTest2Cycles );

	/* vRegTest1 should never exit! */
	vTaskDelete( NULL );
}
/*-----------------------------------------------------------*/

static void prvCheckTimerCallback( xTimerHandle xTimer )
{
static long lChangedTimerPeriodAlready = pdFALSE;
static unsigned long ulLastRegTest1Value = 0, ulLastRegTest2Value = 0;

/* Buffer into which the high frequency timer count is written as a string. */
static char cStringBuffer[ mainMAX_STRING_LENGTH ];

/* The count of the high frequency timer interrupts. */
extern unsigned long ulHighFrequencyTimerInterrupts;
static xLCDMessage xMessage = { ( 200 / portTICK_RATE_MS ), cStringBuffer };

	/* Check that the register test 1 task is still running. */
	if( ulLastRegTest1Value == ulRegTest1Cycles )
	{
		xMessage.pcMessage = "Error: Reg test2";
	}
	ulLastRegTest1Value = ulRegTest1Cycles;

	/* Check that the register test 2 task is still running. */
	if( ulLastRegTest2Value == ulRegTest2Cycles )
	{
		xMessage.pcMessage = "Error: Reg test3";
	}
	ulLastRegTest2Value = ulRegTest2Cycles;

	/* Have any of the standard demo tasks detected an error in their
	operation? */
	if( xAreGenericQueueTasksStillRunning() != pdTRUE )
	{
		xMessage.pcMessage = "Error: Gen Q";
	}
	else if( xAreQueuePeekTasksStillRunning() != pdTRUE )
	{
		xMessage.pcMessage = "Error: Q Peek";
	}
	else if( xAreBlockTimeTestTasksStillRunning() != pdTRUE )
	{
		xMessage.pcMessage = "Error: Blck time";
	}
	else if( xAreSemaphoreTasksStillRunning() != pdTRUE )
	{
		xMessage.pcMessage = "Error: Sem test";
	}
	else if( xAreIntQueueTasksStillRunning() != pdTRUE )
	{
		xMessage.pcMessage = "Error: Int queue";
	}
	#if !defined(__32MX795F512L__)
		else if( xAreComTestTasksStillRunning() != pdTRUE )
		{
			xMessage.pcMessage = "Error: COM test";
		}
	#endif

	if( xMessage.pcMessage != cStringBuffer )
	{
		/* An error string has been logged.  If the timer period has not yet
		been changed it should be changed now.  Increasing the frequency of the
		LED gives visual feedback of the error status (although it is written
		to the LCD too!). */
		if( lChangedTimerPeriodAlready == pdFALSE )
		{
			lChangedTimerPeriodAlready = pdTRUE;

			/* This call to xTimerChangePeriod() uses a zero block time.
			Functions called from inside of a timer callback function must
			*never* attempt	to block as to do so could impact other software
			timers. */
			xTimerChangePeriod( xTimer, ( mainERROR_CHECK_TIMER_PERIOD_MS ), mainDONT_BLOCK );
		}
	}
	else
	{
		/* Write the ulHighFrequencyTimerInterrupts value to the string
		buffer.  It will only be displayed if no errors have been detected. */
		sprintf( cStringBuffer, "Pass %u", ( unsigned int ) ulHighFrequencyTimerInterrupts );
	}

	/* Send the status message to the LCD task for display on the LCD.  This is
	a timer callback function, so the queue send function *must not* block. */
	xQueueSend( xLCDQueue, &xMessage, mainDONT_BLOCK );
	vParTestToggleLED( mainCHECK_LED );
}
/*-----------------------------------------------------------*/

static void prvSetupHighFrequencyTimerTest( xTimerHandle xTimer )
{
	/* Setup the high frequency, high priority, timer test.  It is setup in this
	software timer callback to ensure it does not start before the kernel does.
	This is a one shot timer - so the setup routine will only be executed once. */
	vSetupTimerTest( mainTEST_INTERRUPT_FREQUENCY );
}

redpajama_set_name: RedPajamaGithub


Local patch lists are now live! Many users have requested to be able to create a list for their local patch and hence be able to compare with their birding friends. We have added nearly 1000 English sites and will be adding the rest of Britain and Ireland very soon, then the world.
If you have specific sites you wish to be added then just let us know by posting in the forums.


Cluiche Mountain Math Ar Líne. Seinn cluiche saor in aisce Mountain Math ar líne.
Feicfidh tú go tapa a chomhaireamh. An luas i gcluiche seo, ar ndóigh, tábhachtach, ach tábhachtach a thabhairt ar an freagra ceart. Soláthraíonn pionóis do botúin.
© cluiche ar líne saor in aisce Mountain Math ().
Play ar líne a flash cluiche Mountain Math saor in aisce. Ná déan dearmad a mheas an cluiche seo Mountain Math agus an cluiche seo a roinnt le do chairde is fearr.
Cur síos ar an gcluiche Mountain Math líne. Conas an cluiche a imirt ar líne Feicfidh tú go tapa a chomhaireamh. An luas i gcluiche seo, ar ndóigh, tábhachtach, ach tábhachtach a thabhairt ar an freagra ceart. Soláthraíonn pionóis do botúin. Ag deireadh an chluiche a fhoghlaim tú do IQ. Tar ar gach leibhéal a conquer go léir an barr matamaiticiúla agus a bheith ina genius matamaiticeoir fíor!


text:
package com.alexrnl.subtitlecorrector.gui.view;

import static com.alexrnl.subtitlecorrector.common.TranslationKeys.KEYS;

import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.beans.PropertyChangeEvent;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.WindowConstants;

import com.alexrnl.commons.gui.swing.AbstractFrame;
import com.alexrnl.commons.io.IOUtils;
import com.alexrnl.commons.translation.Translator;
import com.alexrnl.subtitlecorrector.correctionstrategy.Parameter;
import com.alexrnl.subtitlecorrector.correctionstrategy.Strategy;
import com.alexrnl.subtitlecorrector.gui.controller.MainWindowController;

/**
 * The view of the main window.
 * @author Alex
 */
public class MainWindowView extends AbstractFrame {
	/** Logger */
	private static final Logger		LG						= Logger.getLogger(MainWindowView.class.getName());

	/** Serial version UID */
	private static final long		serialVersionUID		= -6742939741527280064L;

	/** The default insets to use in the window */
	private static final Insets		DEFAULT_INSETS			= new Insets(5, 5, 5, 5);
	/** Minimum size for the text box */
	private static final int		MINIMUM_TEXT_BOX_SIZE	= 18;

	// GUI elements
	/** The field where the path of the subtitle will be displayed */
	private JTextField				subtitleField;
	/** The button to open the file explorer window to select the subtitle */
	private JButton					subtitleButton;
	/** The combo box for the strategy */
	private JComboBox<String>		strategyComboBox;
	/** The button to start the correction */
	private JButton					startCorrectingButton;
	/** The check box for the overwrite option */
	private JCheckBox				overwriteCheckbox;
	/** The panel with the parameters of the strategy */
	private JPanel					strategyParameterPanel;
	/** The combo box for the locale parameter */
	private JComboBox<Locale>		localeComboBox;
	/** Map with the strategy parameters components */
	private Map<String, StrategyParameterComponent>	strategyParameters;

	/** The controller in charge of the view */
	private MainWindowController	controller;
	/** The translator to use for the view */
	private Translator				translator;
	/** The factory for the component representing strategy parameters */
	private StrategyParameterComponentFactory	parameterComponentFactory;

	/**
	 * Constructor #1.

	 * @param iconFile
	 *        the icon file to use for the main window.
	 * @param controller
	 *        the controller which handle this view.
	 * @param translator
	 *        the translator to use for the GUI.
	 */
	public MainWindowView (final Path iconFile, final MainWindowController controller,
			final Translator translator) {
		super(translator.get(KEYS.gui().mainWindow().title()), iconFile, controller, translator);
	}

	@Override
	protected void preInit (final Object... parameters) {
		controller = (MainWindowController) parameters[0];
		translator = (Translator) parameters[1];
		parameterComponentFactory = new StrategyParameterComponentFactory();
	}

	@Override
	protected void build () {
		setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

		buildMainContainer();
		installListeners();
	}

	/**
	 * Build the main container of the main window.
	 */
	private void buildMainContainer () {
		final Container panel = getContentPane();
		panel.setLayout(new GridBagLayout());

		int xIndex = 0;
		int yIndex = 0;
		final GridBagConstraints c = new GridBagConstraints(xIndex, yIndex, 1, 1, 0, 0,
				GridBagConstraints.BASELINE_TRAILING, GridBagConstraints.HORIZONTAL,
				DEFAULT_INSETS, 0, 0);
		add(new JLabel(translator.get(KEYS.gui().mainWindow().subtitleLabel())), c);
		c.gridy = ++yIndex;
		add(new JLabel(translator.get(KEYS.gui().mainWindow().strategyLabel())), c);

		yIndex = 0;
		c.gridy = yIndex;
		c.gridx = ++xIndex;
		subtitleField = new JTextField(MINIMUM_TEXT_BOX_SIZE);
		add(subtitleField, c);

		c.gridx = ++xIndex;
		subtitleButton = new JButton(translator.get(KEYS.gui().mainWindow().subtitleButton()));
		add(subtitleButton, c);

		c.gridx = --xIndex;
		c.gridy = ++yIndex;
		c.gridwidth = 2;
		strategyComboBox = new JComboBox<>(controller.getStrategiesNames().toArray(new String[0]));
		add(strategyComboBox, c);

		c.gridx = 0;
		c.gridy = ++yIndex;
		c.gridwidth = 3;
		overwriteCheckbox = new JCheckBox(translator.get(KEYS.gui().mainWindow().overwriteLabel()));
		add(overwriteCheckbox, c);

		c.gridx = 0;
		c.gridy = ++yIndex;
		c.gridwidth = 3;
		strategyParameterPanel = new JPanel();
		strategyParameterPanel.setLayout(new GridBagLayout());
		strategyParameterPanel.setBorder(BorderFactory.createTitledBorder(translator.get(KEYS.gui().mainWindow().strategyParameters())));
		localeComboBox = new JComboBox<>(controller.getAvailableLocales().toArray(new Locale[0]));
		strategyParameters = new HashMap<>();
		updateStrategyParameterPanel(null);
		add(strategyParameterPanel, c);

		c.gridx = 0;
		c.gridy = ++yIndex;
		c.gridwidth = 3;
		startCorrectingButton = new JButton(translator.get(KEYS.gui().mainWindow().startCorrectingButton()));
		add(startCorrectingButton, c);
	}

	/**
	 * Update the strategy parameter panel with the specified {@link Strategy} parameters.
	 * @param strategy
	 *        the strategy currently used, can be null if none is selected.
	 */
	private void updateStrategyParameterPanel (final Strategy strategy) {
		strategyParameterPanel.removeAll();

		int xIndex = 0;
		int yIndex = 0;
		final GridBagConstraints c = new GridBagConstraints(xIndex, yIndex, 1, 1, 0, 0,
				GridBagConstraints.BASELINE_TRAILING, GridBagConstraints.HORIZONTAL,
				DEFAULT_INSETS, 0, 0);

		strategyParameterPanel.add(new JLabel(translator.get(KEYS.gui().mainWindow().localeLabel())), c);
		c.gridx = ++xIndex;
		strategyParameterPanel.add(localeComboBox, c);

		if (strategy != null) {
			for (final Parameter<?> parameter : strategy.getParameters()) {
				c.gridx = 0;
				c.gridy = ++yIndex;
				c.gridwidth = 2;
				final String label = translator.get(parameter);
				final StrategyParameterComponent component = parameterComponentFactory.getParameterComponent(parameter, label);
				strategyParameterPanel.add(component.getComponent(), c);
				strategyParameters.put(label, component);
			}
		}

		strategyParameterPanel.revalidate();
	}

	/**
	 * Install the listeners on the components.
	 */
	private void installListeners () {
		subtitleField.addKeyListener(new KeyAdapter() {
			@Override
			public void keyTyped (final KeyEvent e) {
				SwingUtilities.invokeLater(new Runnable() {
					@Override
					public void run () {
						controller.changeSubtitle(Paths.get(subtitleField.getText()));
					}
				});
			}
		});
		subtitleButton.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed (final ActionEvent e) {
				final JFileChooser fileChooser = new JFileChooser();
				fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
				fileChooser.setMultiSelectionEnabled(false);
				final int answer = fileChooser.showOpenDialog(getFrame());
				if (answer == JFileChooser.APPROVE_OPTION) {
					controller.changeSubtitle(fileChooser.getSelectedFile().toPath());
				} else {
					if (LG.isLoggable(Level.INFO)) {
						LG.info("User canceled file selection");
					}
				}
			}
		});
		strategyComboBox.addItemListener(new ItemListener() {
			@Override
			public void itemStateChanged (final ItemEvent e) {
				controller.changeStrategy((String) e.getItem());
			}
		});
		overwriteCheckbox.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed (final ActionEvent e) {
				controller.changeOverwrite(overwriteCheckbox.isSelected());
			}
		});
		localeComboBox.addItemListener(new ItemListener() {
			@Override
			public void itemStateChanged (final ItemEvent e) {
				controller.changeLocale((Locale) e.getItem());
			}
		});
		startCorrectingButton.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed (final ActionEvent e) {
				controller.startCorrection();
			}
		});
	}

	@Override
	public void dispose () {
		if (LG.isLoggable(Level.INFO)) {
			LG.info("Subtitle corrector exiting");
		}
		super.dispose();
		controller.dispose();
	}

	@Override
	public void modelPropertyChange (final PropertyChangeEvent evt) {
		if (!isReady()) {
			LG.warning("Main window is not ready, cannot update view (" + evt + ")");
			return;
		}

		if (evt == null || evt.getPropertyName() == null) {
			LG.warning("Change event is null, or property name is null, cannot process event: "
					+ evt);
			return;
		}

		switch (evt.getPropertyName()) {
			case MainWindowController.SUBTITLE_PROPERTY:
				subtitleField.setText(IOUtils.getFilename((Path) evt.getNewValue()));
				break;
			case MainWindowController.STRATEGY_PROPERTY:
				final Strategy strategy = (Strategy) evt.getNewValue();
				strategyComboBox.setSelectedItem(translator.get(strategy));
				updateStrategyParameterPanel(strategy);
				pack();
				setMinimumSize(getSize());
				break;
			case MainWindowController.OVERWRITE_PROPERTY:
				overwriteCheckbox.setSelected((boolean) evt.getNewValue());
				break;
			case MainWindowController.LOCALE_PROPERTY:
				localeComboBox.setSelectedItem(evt.getNewValue());
				break;
			default:
				LG.info("Model property not handle by main window: " + evt);
				break;
		}
	}
}


Half-Immortal Yang Tian faced off against 9 Half-Immortals for his vengeance. While he succeeded, he sustained critical injuries and returned to Earth for his final resting place. However he managed to break through to True Immortal and his temperament returns to that of a young man. He just wants to have a lot of wives and live a quiet life. However, trouble always comes knocking.


text:
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace Piranha.EntityFramework.Tests
{
	/// <summary>
	/// Tests for the category repository.
	/// </summary>
	[TestClass]
	public class CategoryTests : Piranha.Tests.Repositories.CategoryTests
	{
		/// <summary>
		/// Default constructor.
		/// </summary>
		public CategoryTests() {
			App.Init(c => {
				c.Store = new EntityFramework.Store();
			});
		}

		/// <summary>
		/// Test the category repository.
		/// </summary>
		[TestMethod]
		[TestCategory("Entity Framework")]
		public void Categories() {
			base.Run();
		}
	}
}


Amid the social media storm of National Schools Regatta, it was easy to overlook the European Rowing Junior Championships being held in Gravelines, France on Saturday. A record 34 countries competed with GB sending only four crews owing to the date clash.
The standout story from the event was the win by Jake Offiler of Globe and James Cartwright of Gloucester RC. Having won both heats with relative ease, Cartwright and Offiler had to fight all the way to win the gold by 0.28 seconds from the Italians who in turn were only 0.23 seconds ahead of third-placed Belarus.
This win by the pair, who are being coached by Ben Jackson, GB Start coach and head coach at Gloucester Hartpury, doesn't guarantee either sculler a spot at the World Rowing Junior Championships. They have still to do final trials and selection before the team is picked for the championships being held in Racice in August. "There are a lot of guys who are pretty good and want the seats so it's going to be tough," said Offiler who came second with Laurence Joss behind Victor Kleshnev and Bryn Ellery, in the February trials and sixth overall in his single at April trials.
Izzy Lack of Tideway Scullers and Rhiannon Morgan of Gloucester RC in the JW2x were third in their heat and made fifth in their B Final. Phoebe Campbell of Thames Tradesmen came fourth in her B Final in 8:11.42 with the A Final being won by reigning world junior champion, Esther Briz Zamorano of Spain in 7:41.64.
Laurence Joss of Tideway Scullers won his B Final by three seconds in a time of 7:11.09 with the A Final being won by Moritz Wolff of Germany in 7:21.74. Wolff won silver at the World Rowing Junior Championships in Trakai last year.


Rich Stolz is the Exectuive Director of OneAmerica. Its mission is to advance the fundamental principles of democracy and justice through building power in immigrant communities, in collaboration with key allies.
Stolz was born in Seoul, South Korea. His parents met in Korea, when his father, an American citizen, worked there. His mother became a naturalized citizen, and Rich's family moved to the United States when he was three. Rich grew up in Redwood City, California. He was always conscious of his bi-racial identity, which was framed by experience as new-comers to the United States. Rich has thought a good deal about what means to be an American citizen and the consequences of prejudice.
Over the last fifteen years, Rich has worked at the Center for Community Change, a national organization based in Washington, D.C. His work focused on the intersection of policy, politics and organizing across a broad spectrum of issues impacting low-income and minority communities, including jobs and income support policy, immigration policy, infrastructure investment and environmental justice. He has lived and organized in Portland, Maine; Montgomery, Alabama; Tucson, Arizona; Washington, D.C.; and Seattle, Washington.
Rich helped to found and staff the Transportation Equity Network, a multi-ethnic organizing strategy focused on the impact of transportation policy on job access, community development, and environmental justice.
Stolz also was the coordinator of the Fair Immigration Reform Movement (FIRM), a national coalition of immigrant rights organizations fighting for immigration reform. He supported the growth of youth organizing across FIRM, managed nonpartisan voter mobilization programs, and lead grassroots efforts to pass comprehensive immigration reform legislation in 2007.
He was the campaign manager for the Reform Immigration FOR America Campaign in 2008, a multi-million dollar, labor, faith, community, and business campaign with more than 900 organizational endorsers.
As a student at Stanford University, he organized ethnic studies programs that invested in research and instruction on Asian American, Chicano, African American and Native American Studies.
Sign language and communication material in alternate formats can be arranged given sufficient notice by calling (206) 464-7090 or TTY Relay 711. 中文 | Chinese, 한국 | Korean, Русский | Russian, Español | Spanish, Tagalog, Tiếng việt | Vietnamese Call 206-587-4819.


text:
Home/News/The US is prolonging the war in Ukraine by sending arms and rejecting the ceasefire
The US is prolonging the war in Ukraine by sending arms and rejecting the ceasefire
Rick Schindler3 weeks ago
Russia's envoy to the United States has warned that by sending additional military equipment to Ukraine and rejecting the Kremlin's recent ceasefire directive, Washington is only fueling further conflict between Moscow and Kyiv.
Shared with in comments news week From the Russian Embassy in Washington, DC, Ambassador Anatoly Antonov criticized the US decision to send Bradley Fighting Vehicles, part of a $3 billion military package, to Ukraine, calling it "a confirmation that our interlocutors in the United States has not even tried to listen to our numerous calls to consider the possible consequences of such a dangerous course by Washington."
"It is finally becoming clear to the entire international community that the US unleashed a real proxy war against Russia in 2014 by supporting Nazi criminals in Kyiv," Antonov argued.
That year, a political uprising in the Ukrainian capital brought a pro-Western government to power, while a pro-Moscow separatist uprising erupted in the country's eastern Donbass region. Russia accused Ukraine of promoting extremism, meanwhile occupied the Crimean Peninsula and annexed it shortly thereafter in an internationally disputed referendum.
Since then, the US and a number of NATO allies have armed and trained Ukrainian forces, while Kyiv and its supporters have accused Moscow of waging an eight-year thinly veiled war of aggression. Russian forces launched a full-scale attack on the neighboring country in February, annexing four more regions – the self-proclaimed Donbass republics of Donetsk and Luhansk, and Kherson and Zaporizhia – in another series of unrecognized votes and spurring greater Western support for Ukraine.
And while the White House claimed that such weapons were intended solely for the defense of Ukrainian territory, Antonov claimed that "any talk about a 'defensive character' of arms supplied to Ukraine has long since become absurd."
"The government's actions spur Ukrainian radicals to continue with their terrible deeds," Antonov said. "With each subsequent transfer of arms, their sense of impunity grows stronger. They continue to kill civilians in the Donbass, Zaporozhye and Kherson regions of the Russian Federation in the most cynical manner."
Soldiers of Ukraine's 55th Artillery Brigade operate on the front line with a US-made M777 howitzer amid artillery combat December 29, 2022 in Bakhmut, Ukraine. Much of the Donetsk region has been held by Russia-allied separatists since 2014, and Russia has sought to expand its control there since the war began on February 24.
Pierre Crom/Getty Images
Kyiv has vehemently denied such allegations, as well as the notion that the former Soviet republic and its aspirations to join NATO posed a threat to its larger neighbor. As the war over these four regions raged on, the government of Ukrainian President Volodymyr Zelenskyy has also indicted his Russian counterpart Vladimir Putin with war crimes over allegations that Russian troops committed atrocities.
And as US and Allied aid continues to flow to Ukraine, Antonov was particularly critical of the fact that the recent decision to send Bradley Fighting Vehicles came after a phone call between US President Joe Biden and German Chancellor Olaf Scholz. Antonov condemned the West's role in the broader conflict, claiming that former leaders Angela Merkel of Germany and Francois Hollande of France had previously "confessed" that "the Minsk agreements served to give Kyiv time to improve its military capabilities." ".
The series of deals signed in 2014 and 2015 between Kyiv and separatists, mediated by the two European leaders, were intended to end the conflict but have been plagued by regular breaches by both sides. Antonov said the latest developments were evidence of a longstanding plot to undermine Russia on the back of failed diplomacy.
"Given the close ties between Washington and Berlin, it becomes clear that the West, under US leadership, simply deceived our country and began deliberately weakening Russia much earlier than February 24, 2022," Antonov said. "How can one trust the politicians of the major Western European countries when it is time to talk about the future world order, the system and the substance of the agreements that might be required?"
The conflict has severely strained Russia's relations with the US and its allies, who have joined Zelenskyy in calling on Putin to withdraw his troops from Ukraine. But Antonov said that given the course of events, "no one should have any doubts as to who bears responsibility for prolonging this conflict."
"All government actions indicate a lack of any desire for a political solution," Antonov said.
This, he argued, even extended to the Kremlin's decision on Thursday to "introduce a truce along the entire line of contact in Ukraine" for 36 hours between the 6 churches. The order followed an appeal by Patriarch Kirill of Moscow to allow observers "to attend services" on the holy days.
It also happened shortly after Turkish President Recep Tayyip Erdogan, who managed to organize a grain deal and a prisoner exchange between Moscow and Kyiv throughout the conflict, spoke separately with Putin and Zelenskyy.
U.S. Army Soldiers assigned to Cutthroat Company, 1st Battalion, 66th Armored Regiment, 3rd Armored Brigade, 4th Infantry Division, practice combating enemy targets with an M2 Bradley Fighting Vehicle Oct. 13 during a platoon Live fire exercise at Pabradė Training Area, Lithuania, 2022. The US is ready to send the armored fighting vehicles to Ukraine as part of ongoing efforts to bolster the country's capabilities to counter Russian forces.
Specialist Casandra B. Ancheta/US Army National Guard
While Zelenskyy thanked Erdogan for his peace efforts, the Ukrainian leader and his officials rejected Putin's ceasefire. Secretary of the National Security and Defense Council Oleksiy Danilov was particularly scathing about his dismissal.
"How does a pack of little Kremlin devils relate to a Christian holiday? Who will believe scum killing children, bombing maternity hospitals, torturing prisoners? A truce? Lies and hypocrisy," Danilov tweeted. "We will bite you in the singing silence of the Ukrainian night."
US officials were also critical.
Pentagon press secretary Air Force Brigadier General Scott Ryder said: "Given Russia's long track record of propaganda, disinformation and its relentless attacks on Ukrainian cities and civilians, there is significant skepticism both here in the US and around the world at this time ."
"Of course, in our view, if Russia was really interested in ending the violence and bloodshed it has inflicted on the Ukrainian people, they would immediately withdraw from Ukraine and this war will now end together," Ryder said. "But it appears that will not be the case, so we will remain focused on supporting Ukraine in its security assistance needs as it fights to defend its country."
State Department spokesman Ned Price called the move "cynical" as Russia's attacks on Ukraine coincided with New Year's Day. He expressed "concern" that "the Russians would try to use any temporary lull in fighting to rest, rearm, regroup, and eventually attack again."
As for Biden, he described the move as an attempt by his Russian counterpart to "find some oxygen amidst the grueling conflict," rather than a genuine gesture to end hostilities.
Antonov took special note of the US leader's reaction in line with the recent announcement of more military equipment for Ukraine.
"All of this means that Washington is determined to fight with us to the last Ukrainian," Antonov said, "while the fate of the people of Ukraine means nothing to the US."
https://www.newsweek.com/russia-envoy-us-extends-ukraine-war-sending-arms-rejecting-ceasefire-1771724 The US is prolonging the war in Ukraine by sending arms and rejecting the ceasefire
Rick Schindler
[VIDEO] Dolly Parton on "Call Me Kat": Leslie Jordan Tribute - Phil
South LA hit-and-run suspect arrested in clash that killed foster mom Trina Newman Townsend


text:
True Story Behind Estranged!
By sidman69,
November 16, 2017 in GUNS N' ROSES - DISCUSSION & NEWS
sidman69
Last week i took a look at november rain and this week I'm taking a look at my favourite GNR Song Estranged!
The all piano "demo" is a fake created by a fan back in 2002 or so. We've discussed it in depth here. Absolutely not a demo; just a piano cover.
goldentobacco
Location:Misty Mountains
''Oh and Freightrain, you can go ahead and fuck your mother, you ignorant cunt''
Best post in years
Also would have been worth noting that the version on Live Era, while sourced from the Tokyo 92 show, same as the VHS/DVD releases, does indeed feature some newly recorded overdubbed vocals.
Drewdown
Basically your favorite part of Estranged is all of it?! Jajaja, just playing. Well done as usual and as a Stern fan it was funny to hear that Ronnie makes an appearance. Hard to argue that this tune isn't perfection in so many ways.
4 hours ago, Drewdown said:
h2sublime
I agree about Estranged being GNR's best song. In fact, it is up there with my favorite songs from any band ever. Top 5 easy if not placed at 1.
Chewy2
Whoa, whoa, whoa stop the clock! Were you being serious about that being Ronnie Mund making a cameo in the video? I've been a huge Howard Stern fan since the early 1990's & I don't ever recall that being mentioned on the show. And I haven't missed many of Howard's shows in the past 3 decades.
11 hours ago, Chewy2 said:
that was a joke i just thought he looked like ronnie. It couldn't have been ronnie, it didn't look like dean cain's body on the guy with the stache....
11 hours ago, sidman69 said:
Haha, okay that makes more sense. I kept looking at the screenshot over & over and saying to myself that I guess it kind of looks like a younger Ronnie. That whole picture of Ronnie thing this week was very funny.
Silverburst80
Estranged only gets better with time for me.
I have found that playing the song on acoustic guitar really makes me appreciate the melody and melodic shifts a lot more than when I hear the released version. There is an innate beauty to the melody in connection to the lyrics that is a bit lost in production and in the longevity of the recorded version. Unfortunately, then I miss Slash's amazing lead guitar parts. You can't have it all.
It really is a great song with some of Axl's best lyrics.


A parade of giant animal light sculptures will make their way down Macquarie Street, Saturday 15 October, Taronga Zoo announced today,marking100 years since the Zoo officially opened in Mosman in 1916.
Starting at Hyde Park at 8pm, the amazing light sculptures will be escorted by a cast of school children who will dance, sing and light up the streets for the wild to the Sydney Opera House, where a live performance will take place.
The giant animal light sculptures represent Taronga's ten year commitment to the conservation and preservation of 10 Centenary Species, iconic and beloved animals which include the Asian Elephant, Platypus, and Sumatran Tiger.
The fabulous light parade will recreate the historic moment 100 years ago, when Jessie the elephant made her way from the original Zoological site in Moore Park, through the CBD, down Macquarie Street to a spot on the foreshore directly where the Harbour Bridge and Opera House would rise years later. Jessie boarded a barge, to be transported across the harbour as did hippos, primates, reptiles, and many other animal species Taronga still cares for today.
Taronga is encouraging Australians to 'Stand Up #FortheWild' by coming along to cheer the parade or by donating to its Centenary Commitment to turn around the plight of these 10 critical species.
The parade is the exciting culmination for Taronga's Centenary program, presented by long-term supporter ANZ, which has also included Vivid Sydney at Taronga, EID at Taronga, inviting guests to come in for $1 on their birthday, creating a stunning collection of past and present Taronga memories at #IGrewupWithTaronga, hosting an amazing birthday party on the 7 October Centenary anniversary and the commencing of amazing field-work to conserve the 10 Centenary species. .


text:
El , también conocido como castillo Shizuki es un castillo japonés ubicado en Hagi, prefectura de Yamaguchi, en Japón.

Historia
Después de que Mōri Terumoto perdió sus tierras cerca de Hiroshima después de haber apoyado al bando perdedor de Ishida Mitsunari durante la batalla de Sekigahara, fue enviado a Hagi, donde construyó el castillo en 1604, el cual continuó bajo el control del clan Mori hasta la Restauración Meiji. El castillo fue destruido en su mayoría en 1874, por lo que quedaron tan solo algunas ruinas.

Actualmente el castillo es un Sitio Histórico Nacional. Además, forma parte del conjunto patrimonial denominado Sitios de la revolución industrial de la era Meiji en Japón: siderurgia, construcciones navales y extracción de hulla que fue elegido Patrimonio de la Humanidad por la Unesco en 2015.

Referencias

Bibliografía
Benesch, Oleg and Ran Zwigenberg (2019). Japan's Castles: Citadels of Modernity in War and Peace. Cambridge: Cambridge University Press. p. 374. ISBN 9781108481946.
Schmorleitz, Morton S. (1974). Castles in Japan. Tokyo: Charles E. Tuttle Co. pp. 142–144. ISBN 0-8048-1102-4.

Enlaces externos

Hagi
Hagi
Bienes individuales inscritos Patrimonio de la Humanidad en Japón
Hagi
Hagi
Hagi

redpajama_set_name: RedPajamaWikipedia


text:
Q: Word splitting within backticks What is the difference between line #2 and line #4 in the script ("foo bar" (without quotes) folder exists):
FOOBAR="foo bar"
echo `ls -la "$FOOBAR"`
args="-la \"$FOOBAR\""
echo `ls $args`

Output:
total 0 drwxr-xr-x 2 tervlad LD\Domain Users 68 15 ноя 11:47 . drwxr-xr-x 7 tervlad LD\Domain Users 238 16 ноя 18:01 ..
ls: "foo: No such file or directory
ls: bar": No such file or directory

How can I get line #4 working properly?

A: $FOOBAR is expanded in the assignment to args. Also quotes are interpreted before $ expansion, so quotes are literal parts of the expanded string.
Just use an array.
args=( "-la" "$FOOBAR" )
ls "${args[@]}"


If the consumer administration is ineffective, it will start affecting the profitability of your small business alternative. The first and most essential question it's essential to reply is whether or not native shoppers in the target market can afford to purchase your products or services and in case you are you able to promote them at a competitive value. Whereas the above definition is understandably broad, it should be famous that every one franchises are considered biz opps -however not all enterprise alternatives are thought of franchises.
There are opportunities that offer common individuals the chance to make use of the internet to leverage demand for merchandise being offered by the company they're part of. The people who bought in a majority of these alternatives have collected more money then they will spend.
Overproduction, defective merchandise and poorly skilled workers are only a few of the potential sources of waste that enterprise house owners should search for. Launching new services, or a minimum of improving present ones, may also repay during a recession.
Due to this improved energy of many kinds of data evaluation, extra companies are more likely to try to use it to squeeze enhancements out of their operations, from attracting and conserving customers to determining which new merchandise to introduce and how you can worth them.
You would possibly even rent an outside advertising and marketing marketing consultant to evaluate and probably argue with the mum or dad firm's choice. If you're tired of earning money for others and dream of working a company of your own, you should consider and consider the enterprise opportunities accessible in franchising.


So as I am sure those of you who keep tabs on the latest news out of the MotoGP paddock will be aware that another of the worst kept secrets is out and will be formally announced at today's press conference in Mugello. Maverick Viñales is off to Yamaha for the 2017 -18 seasons partnering up with Valentino Rossi. Suzuki didn't have much hope in retaining the young Spaniard who was faced with making the decision of riding a well-proven race & championship winning bike or carry on developing his current steed to hopefully win one day. Personally I'd have loved to see him stay on with Suzuki and try to win races or even a championship eventually, a bit of a Kevin Schwantz like moment I suppose. However, MV has oodles of talent, is still young and very ambitious so the Yamaha really is the better option for having a shot at a title over the next couple of seasons.
To add to the rumours and speculation, both MCN and El Pais reported that Dani Pedrosa had a contract offer with Yamaha on the table; this may or may not have been true with some speculating it as possibly a tactic by Yamaha to encourage MV to hurry up and make his decision. DP has now signed on for another two years with HRC, which may be seen by some as a shame as having DP on the Yamaha would have made a nice change from the norm. DP is a very good rider with one 125cc and two 250cc championships to his name. He came very close in 2012 to wining the MotoGP title and is definitely the calm & dependable second rider a team would always want to have, something HRC clearly recognise. Unfortunately with DP remaining at HRC he will without doubt stay the second rider, always the bridesmaid but never the bride.
Another rider to remain with their current team is Andrea Dovizioso, who by all accounts has had the most rotten start to a season by far. A superb second place at the opener in Qatar should have been a good omen for AD as it showed he had good pace and was getting on well with the Ducati GP-16 which had produced good results in testing (see Casey Stoner's lap times). However, come the second round in Argentina his luck went right out the window starting with being taken out by a ridiculous overtaking move from his own team-mate on the last lap, then being t-boned by DP at turn one of the Texas GP, technical issues forcing him out of Jerez and most recently his spectacular synchronised crash with Marc Marquez at Le Mans – Does this guy need a break or what?!
Fortunately for AD the powers that be at Ducati have deemed his more worthwhile in keeping than his teammate who hasn't covered himself in glory so far this season. AD has been a fantastic development rider for Ducati and hopefully he'll be rewarded for his efforts in the races and seasons to come.
With both seats in the Ducati factory squad now taken it meant that Andrea "The Maniac Joe" Iannone will no longer be riding a Duke after this season. Ironically AI had been the odds on favourite for keeping his ride for the next two seasons with a contract almost on the table, unfortunately taking out your team-mate and crashing the bike whilst pushing too hard too early on in the race seems to have cost him his seat. All is not lost though just this morning Suzuki confirmed that AI would be taking the place of the departing MV, which by all accounts isn't the worst seat in the paddock to inherit. The GSX-RR has come on a fair way since its return in 2015 and it's another full factory ride which will come with its benefits. Will AI now become the No.1 rider at Suzuki though? AI is a very good rider, with a proven capability of achieving podiums and in time no doubt wins also.
Stand-by as I'm sure the next epic chapter of the Silly Season will unfold soon enough!
A great write-up and your quite correct that the season is "silly" in quite a few ways.
I know it ain't so simple but come on guys, surely its time to sit down, clear the air and move on, its depressing to see them act like teenagers.
Anywho, I'll look forward to the next update Griff!
Cheers Mike, I really appreciate the feedback.
Unfortunately this situation has now gone on too long and been blown way out of proportion, not helped by the media unsurprisingly, and all parties need to bury the hatchet.
You're absolutely right about the post race farce, all it'll take is for VR to extend a hand or give a pat on the shoulder get something back from MM or JL (or vice versa) and move on. They don't need to be the best of friends but for crying out loud they need to be grown up about it!
I'll hopefully have some more stuff to write about post Mugello. Also if anyone reading my write-up/s has any feedback, good or bad, please do let me know as it'd be very much appreciated.


text:
Q: How to average two rectangles that would produce a rectangle with the average area of the two shapes? I know that this question doesn't have a definite answer, but I'm wondering how someone would go about averaging two shapes to produce a shape that has the mean value of a calculated property of the two shapes.
Say you have a rectangle with sides 4 x 2 and another rectangle with sides 2 x 3. If you averaged the sides together you would get a rectangle that did not have an area that was equal to the mean of the two rectangles areas. But if you did want to find a shape like that how would you go about finding it in a way that was the most logical?

A: Well, if you have $a\times b$ and $c\times d$ and you want an area of $mn= \frac {ab + cd}2$.
If we say $c = k*a$ for some scaling factor and $b= j*d$ for some scaling factor we get $ab = adj$ and $cd = adk$ and $mn =  \frac {ab + cd}2 = ad\frac {j + k}2$.  If we let $m = a\sqrt{\frac {\frac bd + \frac ca}2}$ and $n = d\sqrt{\frac {\frac bd + \frac ca}2}$ that would be an acceptable answer.
In you example of $4\times 2$ and $2 \times 3$ we'd get:
$4\sqrt{\frac {\frac 23 + \frac 12}2} \times 3\sqrt{\frac {\frac 23 + \frac 12}2} = $
$4\sqrt{\frac 7{12}}\times 3\sqrt {\frac 7{12}}$
We end up with the sides being between the two extremes, the area being the average of the area. And... well  $\frac ba = \frac bm \frac ma$ and $\frac dc = \frac d{n}\frac {n}c$.

A: I'm assuming that given two rectangles $A$ and $B$, with $A$ having width $A_w$ and height $A_h$, and $B$ having width $B_w$ and height $B_h$, you want to find a new rectangle, $C$ with width $C_w$ and height $C_h$, such that
$$
\frac{A_w + B_w}{2}=C_w,\\
\frac{A_h + B_h}{2}=C_h,\\
\frac{A_wA_h + B_wB_h}{2}=C_wC_h.
$$
If we fill in the first two definitions for $C_w$ and $C_h$ into the third line, we get
\begin{align*}
\frac{A_wA_h + B_wB_h}{2}&=\frac{A_w + B_w}{2}\cdot\frac{A_h + B_h}{2}=\frac{A_wA_h + A_wB_h+B_wA_h+B_wB_h}{4}\\
&=\frac{A_wA_h+B_wB_h}{2}+\frac{A_wB_h+B_wA_h}{4}-\frac{A_wA_h+B_wB_h}{4}.
\end{align*}
Therefore
\begin{align*}
\frac{A_wB_h+B_wA_h}{4}-\frac{A_wA_h+B_wB_h}{4}&=0\implies\\
A_wB_h+B_wA_h-A_wA_h-B_wB_h&=0 \implies\\
(A_w-B_w)(B_h-A_h)&=0.
\end{align*}
From this last line we see that our starting rectangles must have the same width or height (or both).
In your example a 4x2 and 2x3 rectangle did not meet your criteria, but a 2x4 and a 2x3 rectangle do. If you want to go about finding more of these types of rectangles systemetically, I would consider rectangles with width always less than ore equal to height. So no 3x2 rectangles, but instead 2x3 rectangles, etc.