text:
Ginepri beats Malisse at SAP Open
SAN JOSE, Calif. (AP) -- Robby Ginepri is still recovering from a 2010 mountain bike accident that broke his left elbow. The time off following that crash did restore his hunger for tennis.
Ginepri earned just his third ATP Tour match win since that unfortunate crash about 17 months ago, easily beating Xavier Malisse 6-1, 6-2 on Tuesday night in the opening round of the SAP Open.
"I'm more motivated now than I have been for a long time,'' he said. "I see that tennis isn't such a bad thing after all. It put a lot of things in perspective the nine months I sat. I'm pretty hungry to play.''
Ginepri played that way against Malisse, using an effective serve and strong two-handed backhand to win the match in just 56 minutes.
Ginepri was once a rising star in American tennis, winning three titles and making it to No. 15 in the rankings in 2005 when he reached the U.S. Open semifinals. But he has fallen on hard times in recent years, dropping to 235th in the world after the accident. He crashed while traveling 30 mph and trying to avoid a squirrel.
He played just six matches all last season and then had to undergo another operation after the U.S. Open. He lost in qualifying for the Australian Open last month. He played two Challenger tournaments after that, reaching the final in Honolulu.
He still can't completely straighten his left arm but has regained most of the strength he had lost and hopes to make it back into the top 50.
"I don't think I'll ever be 100 percent,'' he said. "That's the way it goes sometimes. I'm just happy to be playing again, working extremely hard to get back to this level. I'm pleased with how I played tonight and hopefully I can play like this the rest of the week and the rest of the year and take it a step at a time.''
Malisse looked out of sorts from the start Tuesday night as he double faulted to get broken in the opening game of the match and then complained about the ball boys. He hit an overhead into the net to get broken again in the fourth game and double faulted on set point.
Ginepri won 15 of the final 16 points, starting with an ace at break point when it was 2-all in the second set. He sealed it when Malisse hit a forehand into the net on match point.
"I'm just happy to play some tennis again and get into a little bit of a rhythm,'' Ginepri said. "Playing a whole circuit again is going to be nice. Hopefully I can stay healthy for the whole year.''
The first full day of action featured a heavy dose of Americans with seven others joining Ginepri to play their first matches of the tournament. Only two of the other Americans advanced to the second round as Denis Kudla beat countryman Jack Sock in a matchup of 19-year-old up-and-comers and Michael Russell beat seventh-seeded Donald Young 6-1, 7-6 (6) in the late match.
Sock beat Kudla in the U.S. Open junior final in three sets in 2010 and twice on clay in Futures events the past two years, but fell 6-4, 6-7 (6), 6-3 in this match.
Sock, who teamed with John McEnroe to win a doubles exhibition on Monday night, had a short stay in the singles draw. He had his serve broken in the opening game of the match for the only break in the first set. Neither player lost serve in the second set before Sock rallied from 5-2 down in the tiebreaker to force a third set.
Sock got up an early break in the third set before losing four straight games, committing two double faults in the crucial sixth game that included seven deuces. Sock lost that game with a double fault to fall behind 4-2 and failed to convert a break opportunity in the seventh game.
Reigning NCAA champion Steve Johnson later lost his first-round match to Steve Darcis of Belgium, 7-6 (4), 7-6 (5). Johnson, who also lost his three previous ATP Tour matches, battled hard against the more experienced Darcis but fell just short in both tiebreakers.
Johnson, 22, won the NCAA title last year at Southern California and is looking to lead the Trojans to their fourth straight team title in his senior season. He has won 43 straight college matches.
In the first match of the day, American Dennis Lajola lost his ATP Tour debut to fellow qualifier Dimitar Kutrovsky of Bulgaria, 6-7 (7), 6-3, 7-6 (3). Kutrovsky next plays top-seeded Gael Monfils in the second round on Thursday.
Tim Smyczek, who made it to the quarterfinals here last year, was knocked out in the first round by Gilles Muller of Luxembourg, 2-6, 7-6 (5), 6-3.

redpajama_set_name: RedPajamaCommonCrawl


text:
The school of art, architecture and design 'Bauhaus'.1919-1933
"Architects, sculptors, painters, we all must return to the crafts! For art is not a "profession." There is no essential difference between the artist and the craftsman. The artist is an exalted craftsman. In rare moments of inspiration, transcending the consciousness of his will, the grace of heaven may cause his work to blossom into art. But proficiency in a craft is essential to every artist. Therein lies the prime source of creative imagination.
Let us then create a new guild of craftsmen without the class distinctions that raise an arrogant barrier between craftsman and artist! Together let us desire, conceive, and create the new structure of the future, which will embrace architecture and sculpture and painting in one unity and which will one day rise toward heaven from the hands of a million workers like the crystal symbol of a new faith."
– Walter Gropius
The school of art, architecture and design Bauhaus (bauhaus – inversion of the German word "hausbau", which translates as "building houses") was founded in 1919 Germany, Weimar by Walter Gropius and functioned until 1933 when Nazis came to power. With it's new unique approach to teaching and reinventing the connection between art and technology, society, Bauhaus became the most influential modernist school, especially in architecture and design, maintaining it's power even today. Besides, during it's not so long time of existence, the school gathered artists, designers and architects such as: Wasily Kandinsky, Paul Klee, Mies Van der Rohe, Le Corbusier, Herbert Bayer, Eileen Gray, Alvaar Aalto, Charles Eames, Frank Lloyd Whight, Eero Saarinen, Lazlo Moholy-Nagy, Joseph Albers, Marcel Breuer, Hans Meyer and etc.
The cornerstone of Gropius' philosophy was the vision that Bauhaus had to be the bridge between art and industry: if every field of art were regarded as higher order before, Gropius decided that it was essential to unite every branch of art and craft and to make them mass produced, for them to reflect the new era of architecture and design. This vision defined the unique elements of style, so popular in architecture and design even today:
Functional aesthetics
The Bauhaus school became known for it's attitude which favoured the functional side of a house or furniture over the aesthetic one. It was this era when the popular phrase "form follows the function" was born. Bauhaus neglected ornamentation and lavish decorative details, so popular before. Every element of the design had to have it's function and practical usage.
Photo Source: bauhaus-movement.com
Photo Source: Tate.org.uk
The principle of Geometry
In Bauhaus architecture and design strict geometry and strong, rectilinear forms are dominant. The curves and forms that caused the waste of space and poor spatial planning were frowned upon. The use of simple geometric forms had to provide such planning of the interior and exterior of a building which would maximally economize space. This was of essential importance when it came to social housings, where the area for each habitant is strictly defined. Furthermore, it was encouraged to built houses with modest exteriors in contrast to the surrounding landscape of it. The best example of this probably is Farnsworth House of Mies van der Rohe.
Ludwig Mies van der Rohe. Farnsworth House, 1945-1951, Plano, Illinois
Ludwig Mies van der Rohe. Farnsworth House interior, 1945-1951, Plano, Illinois
Hollyhock House by Frank Lloyd Wright 1921
Hollyhock House interior by Frank Lloyd Wright 1920
Paimio Sanatorium by Alvaar Aalto
Photo: Sami Heikinheimo,
"The truth of the materials" was one of the core principles that were taught to students. According to this principle materials should be used in the most "sincere" manner, without altering their nature. Every material, organique or manufactured, has it's beauty which is created with their imperfection. For example, such material as steel, should be apparent and not hidden; Wood or marble surface is imperfect in nature and usually it's being processed – why such marvelous feature has to be hidden? This principle shortened the time and energy needed for manufacturing process.
Tubular steel chair by Marcel Breuer
Barcelona Chair by Mies Van De Rohe
The Wassily Chair by by Marcel Breuer. 1925
Swan Chair Arne Jacobsen. 1958
Nest of a table B 9, 1925-1926
Molded Plywood Lounge Chair by Eames
Midway chair T 454 by Frank Lloyd Wright. 1914
Coffee table by Isamu Noguchi
Chair by Harry Bertoia
Bauhaus Shelve
Bauhaus Thonet Nesting Tables c. 1930
Egg chair by Arne Jacobsen
And lastly, it should be noted that despite its focus on simplicity, mass production and functional side, Bauhaus style doesn't lack emotional depth.
Author: Nuka Zurashvili
Category: ARCHITECTURE ART DESIGN
Tag: architecture and design 'Bauhaus'.1919-1933 Bauhaus Nuka Zurashvili The school of art Walter Gropius არქიტექტურის ბაუჰაუზი დიზაინისა და ხელოვნების სკოლა 'ბაუჰაუზი'.1919-1933 ვალტერ გროპიუსი ნუკა ზურაშვილი


Where are the iPhone clocks?
Native applications for the iPhone and the iPod Touch are arriving in droves at the iTunes App store. However, there are very few clock apps, and only one of interest to 24 hour clock fans. It's called Sol, written by Alexander Valys, (web site http://sol.avalys.net/). It's an elegant sun clock showing the rising and setting times of the sun for a number of locations, on a 24 hour dial (12 noon at the top, 24:00 at the bottom).
Every world time watch we could find seemed to have a twenty-four hour dial with the "24" at the top of the dial. Even many Europeans confided that when they saw or heard a time in 24 hours, they mentally converted it to a 12 hour am or pm time. This was just too confusing, so we drew a circle with two sets of twelve and one 12 at the top to be the 'Noon' 12 and one on the bottom to be the 'Midnight' 12. This seemed more intuitive as the dial mimicked the appearance of the sun revolving around the earth so that at noon it is directly overhead and at midnight it is directly under us.
He's discovered the old medieval Double-XII system again.
The price is about $2000.


text:
Corp Culture
HR/Accounting
IT/Cybersecurity
ETF/Mutual Funds
Art/Collectible
Latest in Work
Tesla Launches Insurance Program in California
Jackie Goodman – August 27, 2019
Tesla announced Wednesday the launch of its new insurance product, which would promise owners of its electric vehicles lower rates of 20 percent to…
Oklahoma Wins Johnson & Johnson Opioid Case
An Oklahoma judge ruled against Johnson & Johnson in the state's opioid suit on Monday, ordering the pharmaceutical giant to pay $572 million for its role in…
SEC Approves Securitize to Record Stock Transfers
Blockchain tech startup Securitize registered as a transfer agent with the U.S. Securities and Exchange Administration (SEC). Securitize, a provider of technology for issuing…
Latest in Learn
Russia to Produce New Missiles Previously Banned Under Nuclear Treaty
Jackie Goodman – September 5, 2019
President Vladimir Putin said that Russia will produce new missiles that were previously banned under the nuclear treaty. According to Putin, Moscow will not deploy…
Apple Files Lawsuit Against Security Startup Corellium for 'Illegally Replicating' iPhone iOS
Apple is suing a security startup called Corellium for the "illegal replication" of the iPhone operating system, iOS. Corellium, a husband-and-wife-founded company, offers "virtualized"…
AT&T Employees Took Bribes in Conspiracy to Unlock Millions of Phones
Jackie Goodman – August 6, 2019
The Justice Department says the U.S. extradited a Pakistani man from Hong Kong after he allegedly bribed AT&T employees to unlock more than 2…
Latest in Invest
Elliptic and MIT's AI Lab Analyzed Over 200,000 Bitcoin Transactions
Blockchain analytics startup Elliptic and researchers at MIT and IBM to publish a public dataset of bitcoin transactions associated with illicit activity. Using machine learning software, the…
Bernard Arnault Becomes World's Second Wealthiest Person
Jackie Goodman – July 23, 2019
French billionaire Bernard Arnault became the world's second richest person. According to Forbes' calculations, the luxury goods titan behind such brands as Louis Vuitton…
Latest in Live
Arizona Iced Tea Partners with Marijuana Company to Create THC Products
The maker of the 99¢ Arizona iced tea is partnering with a Denver-based marijuana company to bring its own cannabis-infused products, starting with vape…
'The Lion King' Becomes 4th Disney Movie to Surpass Billion-Dollar Benchmark in 2019
Disney's 'The Lion King' surpassed another box office milestone as it hit the billion-dollar benchmark, becoming the 4th Disney movie to do so this…
Latest in Consume
Apple to Announce Three iPhone 11 Models in September
If Apple continues to follow past trends, the next iPhone 11 (or iPhone XI) will be released in the fall of 2019. Though the…
Home Sub-Feature 2 Audio Reveals American Airlines Pilots Angrily Confronting Boeing Before Second Deadly Crash
Audio Reveals American Airlines Pilots Angrily Confronting Boeing Before Second Deadly Crash
Jackie Goodman
American Airlines pilots angrily confronted a Boeing official just months before a second deadly crash of a Boeing 737 Max airplane. The meeting between the pilots and Boeing happened in November, regarding a computerized anti-stall system, audio obtained by CBS News reveals.
A Boeing official can be heard on the audio telling pilots that software changes were in the woodwork and could come in as little as six weeks, though the company didn't want to rush the process.
The pilots claimed they weren't aware of the 737 Max's computerized stability program — the Maneuvering Characteristics Augmentation System, or MCAS.
"We flat out deserve to know what is on our airplanes," a pilot is heard saying.
"I don't disagree," the unidentified Boeing official answered.
"These guys didn't even know the damn system was on the airplane," a pilot says, seemingly referring to the Lion Air pilots. "Nor did anybody else."
"I don't know that understanding this system would have changed the outcome of this," the Boeing official says. "In a million miles you're going to maybe fly this airplane, and maybe once you're going to see this ever."
The Dallas Morning News and the New York Times reported that the pilots were quite frustrated that Boeing didn't disclose the presence of the MCAS system, which has been implicated in both deadly wrecks.
Boeing's 737 Max 8 and 9 planes were grounded worldwide following the Ethiopian Air crash in March. 346 people were killed due to the Lion Air and Ethiopian Airlines crashes.
Preliminary reports on both crashes implicated a flight-control system that Boeing designed to operate in the background, making the 737 Max fly like earlier versions of the workhorse jetliner. By maintaining similarities between the planes, it avoided costly pilot training programs.
However, the MCAS received faulty sensor readings in both the Lion Air and Ethiopian jets, causing the planes' noses to be repeatedly pushed downward, which resulted in steep dives. Attempts to overcome this issue were unsuccessful, causing the planes to crash.
Boeing says pilots should rely on the emergency flight procedure when the system malfunctions, though it has not been substantially updated since the 1960s. CNN recently reported that the emergency flight procedure is now under FAA review.
Boeing didn't perform a flight test of a scenario where the system malfunctioned, while it also admitted that its software could have been improved to break what it described as links in the chains of events that ended in the crashes.
The company revealed that it was aware an indicator linked to the sensors was not functional in many 737 Max aircraft as early as 2017 and planned to fix it in a regularly scheduled software update. A person familiar with the matter told CNN last week that the company had not deployed the fix, even after the Lion Air crash.
Previous articleLVMH Unveils Blockchain Platform to Verify Authenticity of Luxury Goods
Next articleHighly Potent Weed Causes Concern About Health Risks
Bugatti's La Voiture Noire to Make U.S. Debut at Pebble Beach
Apple Files Lawsuit Against Security Startup Corellium for 'Illegally Replicating' iPhone...
Filthy Lucre is a lifestyle brand for those interested in living life to the fullest, no apologies. Bringing news and information about finance, politics, travel, and entertainment to those who dare to live what others only dream.
© 2021 Filthy Lucre | Privacy Policy


text:
Piano Sonatas by Benjamin Dale and William Hurlstone
Choose an optionCDMP3 320kbps DownloadFLAC 44.1/16bit DownloadApple Lossless 44.1/16bit DownloadWAV 44.1/16bit Download Clear
Piano Sonatas by Benjamin Dale and William Hurlstone quantity
Label: Celeste Catalogue
Catalogue No: SOMMCD 097
Artists: Mark Bebbington
Composers: Benjamin Dale, William Hurlstone
Genre: Instrumental
These two epic, late romantic romantic Piano Sonatas make a valuable contribution to the catalogue of English music on record: Piano Sonata in D minor by Benjamin Dale (1885 – 1943) and Piano Sonata in F minor by William Hurlstone (1876 – 1906) recorded by the remarkable Mark Bebbington who, in collaboration with SOMM, has carried out an unprecedented amount of work and research in the field of British music during the last 7 or 8 years, many of these making their first appearance on disc.
Mark Bebbington Piano
Indeed the Hurlstone Sonata is still unpublished and this is its premiere recording.
William Hurlstone was born in London's Fulham in 1876. He was recognised early on as a prodigious young musician by both Grove and Parry and won a scholarship to the Royal College of Music at the age of 18. He studied composition with Stanford and the piano with Algernon Ashton and Edward Dannreuther. Though dogged by asthma (which ultimately prevented him from pursuing a professional career as a soloist and was to be the cause of his death, prematurely, at the age of 30) Hurlstone as a student, outshone others such as Vaughan Williams and Holst and established a reputation as one of the RCM's most dazzling products.
His unpublished Piano Sonata in F minor, written when he was only 18, provides ample evidence of his prodigious ability, his already enviable piano technique as well as his complete mastery of the late romantic instrumental forms. Clearly Hurlstone knew his Schumann, Chopin and Brahms, but already detectable is a flair for form and colourful imagination in terms of handling tonality and harmonic progressions.
In the first movement the sombre material of the first subject gives way to a subtle, lyrical second subject. A Chopinesque poetry imbues the slow movement but it also has a Brahmsian gravity which expresses a turbulent, emotional world well beyond the composer's years. The darker hues of the first movement return in the Finale but Hurlstone injects a broader cyclic sense to the structure by recalling themes from the preceding movements.
Benjamin Dale began his Piano Sonata in D minor in 1902, at the age of 17. He had already been studying at the Royal Academy of Music from the age of 15, and probably wrote the Sonata under the supervision of his composition teacher, Frederick Corder. The Sonata was symptomatic of a time at the RAM when a whole generation of exceptional composer-pianists, namely Bax, York Bowen, Paul Corder, Montague Philips and Felix Swinstead, were beginning to forge careers for themselves.
Dale's Sonata, conceived on an epic scale and romantic to the core, is typical of a young ambitious composer. But it was not just the size of the work but the technical difficulty that so impressed the public. Stylistically there is evidence of Brahms and Wagner as well as Rachmaninov and Glazunov. The work nevertheless has an infectious élan and a harmonic fluency full of unusual turns and colourful nuances, and the larger structural scheme is highly unusual. After a free-standing spacious first movement, the next three movements are cleverly subsumed into a series of variations on an original theme – the first four as a slow movement, the next three as a Scherzo, and the last as the work's Finale. The dedicatee of the Sonata, York Bowen, premiered it in November 1905. The work also won the Hambourg composition prize out of 60 entries. Hambourg played the Sonata in June 1906 at the Queen's Hall and although to Dale's fury he only played the Variations, it was rapturously received and it soon became the focus of other professional pianists such as Myra Hess, Irene Scharrer, Vivian Langrish and Benno Moisewitsch. Yortk Bowen also continued to perform the piece until its popularity began to fade in the 1930s, and though some pianists such as Moura Lympany and Frank Merrick revived the work from time to time, its place in the repertoire began to diminish.
The critical plaudits which have greeted Mark Bebbington's performances and recordings have singled him out as a young British pianist of the rarest refinement and maturity. Increasingly recognised as a champion of British music, Mark has recorded exclusively for SOMM "New Horizons" label to unanimous critical acclaim.
His most recent CD, released in November 2009, is a premiere recording of Bax's Piano Concertino coupled with Ireland's Piano concerto and Legend with the Orchestra of the Swan and David Curtis. A disc of British Piano concertos recorded in 2009 with the CBSO and Howard Williams, has attracted high critical acclaim.
In addition to concerto recordings, Mark continues his John Ireland and Frank Bridge solo piano series on SOMM. Four consecutive discs have each earned him 5***** in BBC Music Magazine and International Piano summed up his achievement in October 2009:
"Bebbington's revivals of British piano music are second to none; he could well be dubbed the concert pianists' Richard Hickox. Bebbington has almost single-handedly demonstrated that 20th-century British piano scores have an exciting role to play in the concert hall and recording studio.
On This Recording
Piano Sonata: I. Allegro deciso
Piano Sonata: II. Slow movement: Theme: Molto adagio
Piano Sonata: II. Slow movement: Variation 1: Molto adagio
Piano Sonata: II. Slow movement: Variation 3: Allegretto con grazia
Piano Sonata: II. Slow movement: Variation 4: Adagio maestoso
Piano Sonata: III. Scherzo: Variation 5: Presto
Piano Sonata: III. Scherzo: Variation 6: Tempo di mazurka
Piano Sonata: III. Scherzo: Variation 6: Prestissimo - Andante - Adagio
Piano Sonata: IV. Finale: Variation 8: Molto allegro - Lento
Piano Sonata: I. Allegro
Piano Sonata: II. Andante ma non troppo
Piano Sonata: III. Andante
Piano Sonata: IV. Allegro vivace
Delius: Orchestral Music Music for 2…
Frank Bridge: Piano Music, Vol. 3
Earth's Call
The Complete Piano Music of Sir…


text:
Filippo Tani, O.S.B. (3 May 1631 – 1 January 1712) was a Roman Catholic prelate who served as Bishop of Città Ducale (1686–1712).

Biography
Filippo Tani was born in Albano, Italy on 3 May 1631 and ordained a priest in the Order of Saint Benedict on 7 April 1654.
On 1 April 1686, he was appointed during the papacy of Pope Innocent XI as Bishop of Città Ducale. On 15 April 1686, he was consecrated bishop by Alessandro Crescenzi (cardinal), Cardinal-Priest of Santa Prisca, with Francesco Casati, Titular Archbishop of Trapezus, and Marcantonio Barbarigo, Archbishop of Corfù, serving as co-consecrators. He served as Bishop of Città Ducale until his death on 1 January 1712.

Episcopal succession
While bishop, he was the principal co-consecrator of:
Carlo Giuseppe Morozzo, Bishop of Bobbio (1693);
Giulio Marzi, Auxiliary Bishop of Ostia-Velletri (1693); and
Biagio Gambaro, Bishop of Telese o Cerreto Sannita (1693).

References

External links and additional sources
 (for Chronology of Bishops)
 (for Chronology of Bishops)

17th-century Italian Roman Catholic bishops
18th-century Italian Roman Catholic bishops
Bishops appointed by Pope Innocent XI
1631 births
1712 deaths

redpajama_set_name: RedPajamaWikipedia


Australia's under new management & open for business!
Are you reviewing your headcount needs to deliver the next phase of your business strategy – Options Consulting Group can assist you, here's how.
OCG can provide you with professionals in Accounting, Engineering, Human Resources, Logistics, Manufacturing, Marketing, OH&S, Technical disciplines.
OCG supplies professionals in Accounting, Engineering, Human Resources, Logistics, Manufacturing, Marketing, OH&S, Sales, Technical & Office/Admin disciplines.
Options Consulting Group established in 1990 – & open for business!


text:
Insurance Company News
Our EMpower Ethnic Minority Role Models
June 25, 2020 Michael Shaw Aviva plc
Three of our colleagues have made the EMpower Ethnic Minority Role Model lists. These celebrate the achievements of the ethnic minority business community in the UK & Ireland, Europe, the United States and Canada.
Peers and colleagues nominated all the 2020 Ethnic Minority Role Models based on their experience and influence.
Chika Aghadiuno, Global Risk Director, came 22nd on the EMpower 100 Ethnic Minority Executives List.
Chika Aghadiuno
"At a time when the discussion around race and, notably, racism towards the black community is dominating our news and consciousness, the EMpower list provides a welcome opportunity to remind ourselves and celebrate the many truly diverse individuals that exist and the contribution we make. I look forward to slipping off the list to make way for the many individuals who I know deserve to be on this list ahead of myself, and more importantly, I look forward to the day we no longer need such lists."
Sonia Janday, Senior Legal Counsel, Aviva Investors, came 38th on the EMpower 100 Ethnic Minority Future Leaders List.
Sonia Janday
"Absolutely honoured and overjoyed to be recognised on the EMpower Role Model Lists as an Ethnic Minority Future Leader for 2020. I am thankful that I have been given this platform at Aviva, representing our members on the things that matter to the Origins community.
"My involvement has given me a dual role in looking at this from both an employee and company perspective, listening to our people, addressing company concerns and allowing me to challenge where necessary. Although we have had some great achievements so far, there is still a lot more to do. I want to continue to ensure that everyone is heard and has the benefit of opportunities that I did not have in my early career."
More: Operating update
Anna Dilku, Global Red Cross Partnership Manager, came 99th on the EMpower 100 Ethnic Minority Future Leaders List.
Anna Dilku
"My parents, a solicitor and consultant, have been my role models at home – ambitious, determined and trailblazing, so why couldn't I see any Indians in the spotlight in my professional life? There were no relatable role models to aspire towards. I made a conscious decision to be the change I wanted to see. Now, more than ever, I'm proud to be part of the conversations we are having at Aviva about the change we need to effect and how far we still have to go."
Congratulations to Chika, Anna and Sonia. For the full list visit the Empower website
Read Aviva CEO Maurice Tulloch's message about Black Lives Matter
For information on how Aviva is helping our people, customers and communities impacted by COVID-19 visit: www.aviva.com/covid-19-our-response/
Aviva is a leading international savings, retirement and insurance business. We exist to be with people when it really matters, throughout their lives – to help them make the most of life. We have been taking care of people for more than 320 years, in line with our purpose of being 'with you today, for a better tomorrow'.
Our vision is to earn our customers' trust as the best place to save for the future, navigate retirement and insure what matters most to them. In 2019, we paid £33.2 billion in claims and benefits on behalf of our 33.4 million customers.
We operate through five business divisions: Investments, Savings & Retirement; UK Life; General Insurance; Europe Life; and Asia Life; and focus on three strategic priorities: deliver great customer outcomes, excel at the fundamentals and invest in sustainable growth.
Total group assets under management at Aviva group are £510 billion and our Solvency II capital surplus is £12.6 billion (FY19). Our shares are listed on the London Stock Exchange and we are a member of the FTSE 100 index.
For more details on what we do, our business and how we help our customers, visit www.aviva.com/about-us
The Aviva newsroom at www.aviva.com/newsroom includes links to our image library, research reports and our news release archive. Sign up to get the latest news from Aviva by email.
You can follow us on Twitter: www.twitter.com/avivaplc/
You can follow us on LinkedIn: www.linkedin.com/company/aviva-plc
For the latest corporate films from around our business, subscribe to our YouTube channel: www.youtube.com/user/aviva
We have a Globelynx system for broadcast interviews. Please contact the Press Officer noted above if you would like to make a booking.
More: Update on senior manager remuneration
More from: Aviva plc |	Category: Insurance Company News
← Cinemas in England and Scotland set to re-open with reduced social distancing
Intuit + SYKES: Together We Prosper – SYKES →
Meet Our Race Advisory Council
October 30, 2020 Michael Shaw
Employee confidence in a safe return to the workplace drops
December 17, 2020 Michael Shaw
Prepared to Help You | State Farm
October 8, 2020 Michael Shaw


The entire US territory of Puerto Rico is without power, people have perished attempting to seek shelter, and so many families are without housing due to the destruction of Hurricane Maria. But none of that even comes close to the single most worst possible resulting scenario from the hurricane, Melissa Joan Hart missed her vacation. Celebrities for the longest time have been out of touch with the poor people too willing to give them the attention and money necessary to elevate them to their elite status. Maybe if more underprivileged women actually spent their money on more things that mattered instead of all seven seasons of Sabrina on Blu-Ray it's possible Melissa may not have been able to afford her vacation that was canceled by Mother Nature. What's so entertaining and relatable about being a teenage witch is something I'll never understand.
"And just like that, our family vacation is canceled. Such a bummer but we plan to hit the @nickresortpuntacana resort another time this year."
"I think you should be more concerned with the people that live there instead of your meaningless vacation."
"First, Punta Cana is the Dominican Republic, not Dominica. And it's better to be 'bummed' about death, destruction there.
Understandably Melissa was attacked on social media and eventually deleted her post. How is it possible to have so much money in your possession and not pay someone to filter your insensitive stupidity. Even just asking a friend "hey do you think this is offensive" before you post possible public image damaging perspectives on social media is free. Maybe Melissa and Kirk Cameron can hook up and Hurricane shame people together on social media as a super duo. Both can make category five comments that will blow you away.


Our Socially Responsible Growth Fund combines environmental, social, and corporate governance standards while striving for strong, long-term returns for investors.
*The Responsible Investment Certification Program does not constitute financial product advice. Neither the Certification Symbol nor RIAA recommends to any person that any financial product is a suitable investment or that returns are guaranteed. Appropriate professional advice should be sought prior to making an investment decision. RIAA does not hold an Australian Financial Services Licence. For more information about the RIAA Certification program please click here.


text:
Arizona Attempts Prison System Sell-Off
Loaded on Sept. 15, 2010 by Brandon Sample published in Prison Legal News September, 2010, page 42
Filed under: Private Prisons, Corrections Corporation of America/CoreCivic, GEO Group/Wackenhut, Management and Training Corporation. Location: Arizona.
The next lot in our auction is the Arizona prison system. Do I hear $100,000,000? What, no bidders? None? You, sir, Corrections Corporation of America, you must be interested. No? Okay. How about you, GEO Group? No, not interested either?
Prison privatization is not a new concept but efforts to privatize an entire prison system are rare – having been previously considered in only one state, Tennessee, more than a decade ago. [See: PLN, Sept. 1998, p.16]. However, last year Arizona lawmakers attempted to privatize most of that state's prison system as they tried to close a whopping $4 billion budget deficit.
HB 2010, signed into law by Governor Jan Brewer on September 3, 2009, permitted the unprecedented sale of almost all of Arizona's prisons. Under HB 2010, state prison officials were required to solicit bids for the operation of "one or more prison complexes" by private companies in return for an upfront payment of $100 million. The state would then lease the prisons back from the companies over a 20-year period, paying them to manage the facilities. The prison complex at Yuma was not subject to the law; it had been exempted at the insistence of a Yuma legislator.
The concept was "such a new idea. The model hasn't been done," said Leonard Gilroy, an official with the Reason Foundation, which champions the privatization of government services and has received funding from the private prison industry. "It's sort of like 'we want you to do an operational contract and loan us $100 million,'" Gilroy said. "I don't know if there's enough there to sweeten the pot for the private sector."
When asked about taking over Arizona's prison system, Louise Grant, spokesperson for Corrections Corporation of America (CCA), said they were "not focused on that." She noted that CCA was interested in pursuing traditional private prison contracts. GEO Group, the second-largest private prison operator in the U.S., declined to comment on its intentions, as did a third potential bidder, Utah-based Management & Training Corporation (MTC).
Aside from the $100 million upfront payment being a nonstarter, some lawmakers and state prison officials questioned the wisdom of trying to put Arizona's entire prison system into private hands.
Corrections Director Charles L. Ryan told legislators in a May 2009 hearing that the idea was "very concerning," especially considering that some prison complexes house death row prisoners and other violent offenders. "[The bill] seeks to attempt something never experienced in the nation: Privatizing a state's entire prison system. This is bad public policy," Ryan remarked.
J. "J-Rod" Rodriguez, vice-president of the Arizona Correctional Peace Officers Association, raised concerns about the loss of jobs for state prison guards. "They're trying to replace us with lower-paid [private] guards to handle sex offenders, murderers, rapists, inmates with volatile connections," he said.
Ultimately, Ryan, Rodriguez and other concerned officials had nothing to fear. Although Arizona tried to sell off its prison system to the private sector, there were no buyers. CCA, GEO Group, MTC and other companies just weren't interested – possibly because HB 2010 required "an annual cost efficiency savings to the state."
The system-wide privatization provision of HB 2010 was quietly repealed when HB 2006 was signed into law in March 2010. Prior to its repeal, the Arizona Department of Corrections had reduced the number of prison complexes that could be privatized from nine to two, excluding facilities that house maximum or close-security prisoners.
However, other aspects of HB 2010 remain in force – including a requirement that the Arizona Department of Corrections (ADOC) "issue a request for proposal to privatize correctional health services, including medical and dental services," and "issue a request for proposals and contract for 5,000 private prison beds for either an expansion of current private prisons ... or new locations in this state." Arizona already houses about 20% of its prison population in privately-operated facilities.
Private prison companies were amenable to traditional contracts for 5,000 more beds, and four firms submitted bids in May 2010. The interested companies are CCA, GEO, MTC and Emerald Correctional Management, which is seeking to build several facilities in Arizona including a 1,000-bed prison in Globe. CCA and MTC considered putting prisons in Prescott Valley, but withdrew their proposals due to community opposition and lack of support from the town council.
Arizona's plan to contract for 5,000 more private prison beds hit a snag with the high-profile escape of three prisoners from an MTC-operated facility in Kingman on July 30, 2010. "I believe a big part of our problem is that the very violent inmates, like the three that escaped, ended up getting reclassified [as lower security] quickly and sent to private prisons that were just not up to the job," said Arizona Attorney General Terry Goddard.
The escape, which sparked a nationwide manhunt and exposed serious security flaws at the MTC prison, will be covered in an upcoming issue of PLN. Following the Kingman escape it was revealed that two advisors to Governor Jan Brewer had close lobbying ties to CCA, and that eight CCA executives had donated to Brewer's election campaign. Also, a February 2010 report by the ADOC found it may actually be more expensive to house the state's prisoners in privately-operated facilities.
Sources: www.guardian.co.uk, Associated Press, www.eacourier.com, Arizona Republic, www.azdailysun.com, www.tulsaworld.com, www.silverbelt.com, Prescott Daily Courier, www.money.cnn.com
Thou Shalt Not: Sexual Misconduct by Prison and Jail Chaplains, by David Reutter
Clergy Who Advocate for Prisoners Barred from Prisons and Jails
Federal Court Finds Nation of Islam Publication Not Racially Inflammatory, by David Reutter
$35,000 Settlement in Indiana Jail Failure to Protect and Medical Care Suit, by David Reutter
Boulder Weekly Investigation Ends the Practice of Shackling Colorado Prisoners in Labor, by Pamela White
$10 Million Settlement for Former Colorado Prisoner Cleared by DNA, by David Reutter
Prison Nursery Programs Promote Bonding, Reduce Recidivism, by Gary Hunter
Texas Judge Sharon "Killer" Keller Receives Sanctions
Court Rebuffs BOP for Third Time in PLN Records Suit, by Brandon Sample
Failed Extortion Scheme Led to Washington Prisoner's Suicide Attempt, Lawsuit Says, by David Reutter
Deplorable Conditions at Los Angeles ICE Facility Result in Settlement, by Brandon Sample
$2 Million in Settlements for Wrongful Arrest, Conviction in Ohio
Technology, Budget Cuts Make Sex Offender Monitoring More Difficult, by Matthew Clarke
Five Sentenced in Oregon Prison Food Bribery Scandal, by Mark Wilson
Wisconsin Doctor Sentenced for Sexually Abusing Prisoner Patients
Congress Passes Law to Reduce Crack/Powder Cocaine Sentencing Disparity, by Anthony Papa
Former Prisoner Accepts $179,000 for Wrongful Conviction Under New Florida Law, by David Reutter
Ohio Cuts Prison Industry Jobs, by Matthew Clarke
Alabama's Indigent Defense System "Perfect Storm" for Ineffective Assistance, by David Reutter
$130,000 Settlement in Tennessee Jail Prisoner's Beating, Rape
Pay-to-Stay Jails Unsuccessful in Ohio, by David Reutter
U.S. Supreme Court Holds Restitution Deadlines Not Jurisdictional
U.S. Department of Agriculture Subsidizes Jail Building in Texas
Democratic Chairman's Rhetoric Supports Restoration of Voting Rights, but Actions Speak Louder than Words, by David Reutter
$850,000 Award in Delaware Prisoner's Suicide; State Declines to Renew CMS Contract
U.S. Supreme Court Holds Government May Offset Attorney Fees to Collect Litigant's Debt
Pennsylvania Legislator / GEO Board Member Faces Criminal Charges, by Matthew Clarke
Innocence Project Report on Compensation and Reentry Services for Exonerated Prisoners, by Matthew Clarke
Former Oregon Prison Guard, Accused of Contraband Smuggling and Sexual Misconduct, Files Suit Alleging Racism, by Mark Wilson
Suit Filed for Oregon Jail Pneumonia Death
14 Years of Litigation Fails to Remedy Deficient Jail Medical Care; Herrera Saga Continues in Washington State
Registered Sex Offender Remained on City Payroll While Incarcerated, by Michael Brodheim
Oregon Politician Visits Prison, Proposes Porn Ban, by Mark Wilson
Arizona Attempts Prison System Sell-Off, by Brandon Sample
$1 Million Award in New York State Prisoner's Death Caused by Medical Malpractice
Another Way for CCA to Influence Congress, by Matthew Clarke
The New Jim Crow: Mass Incarceration in the Age of Colorblindness, by Michelle Alexander (N.Y., The New Press, 2010). 290 pages., by Mumia Abu-Jamal
California: Last Two of Five Guards Charged in Prisoner's Death Get Prison Time
U.S. Supreme Court Rejects Federal Good Time Challenge, by Brandon Sample
Justice Thomas' Wife Creates "Nonpartisan" Political Organization, by David Reutter
New Jersey Prison Guards Fake Electrocution, by Brandon Sample
$2.9 Million Settlement in Suit against GEO over Suspicionless Strip Searches, by Matthew Clarke
Mississippi Stops Segregating HIV-positive Prisoners
GEO Group Settles $47.5 Million Texas Prisoner Wrongful Death Suit
New York City Jail Prisoner Awarded $1.3 Million in Deliberate Indifference to Assault Claim
More from Brandon Sample:
Q&A: Ineffective Assistance of Counsel: Which Errors Are Worth Pursuing?, April 12, 2019
Guilty Plea Does Not Foreclose Challenge To Constitutionality Of Conviction, U.S. Supreme Court Decides, April 19, 2018
U.S. Supreme Court Rejects Habeas Relief Citing AEDPA Deference, Dec. 19, 2017
Maryland Ban on Prisoner's Book Rescinded, Aug. 23, 2016
Former BOP Guard Convicted In Murder-For-Hire Scheme, Aug. 22, 2016
Second BOP Guard Convicted In Assault-For-Hire, Aug. 22, 2016
BOP Dentist Gets Slap On The Wrist for Sex Abuse, Aug. 22, 2016
Cook County Jail Agrees to Improvements, April 15, 2013
No More Than 20 Percent Can Be Deducted To Pay Filing Fees, April 15, 2013
Heck Does Not Apply to Released Prisoner Seeking Damages for Sentence Miscalculation, April 15, 2013
Federal Judge Approves $25 Million Class Action Settlement Against Global Tel*Link, Dec. 1, 2020. Private Prisons, Telephone Rates, Class Actions.
California Passes Bill Allowing ICE Detainees to Sue Private Contractors, Dec. 1, 2020. Private Prisons, Immigration Law/Offenses, Prison Litigation Reform Act (PLRA).
Third Circuit Reinstates Claims by Immigration Detainee in GEO-Operated Prison Seeking to Marry U.S. Citizen, Dec. 1, 2020. GEO Group/Wackenhut, Marriage, Immigration Detention.
Whistleblower Claims Female Detainees at Privately Run Georgia ICE Facility Had Forced Hysterectomies, Dec. 1, 2020. Private Prisons, Private Contractors, Male Reproductive, Forcible Treatment, Sterilization.
Lives at Stake as Pennsylvania County De-privatizes Prison, Nov. 1, 2020. GEO Group/Wackenhut.
Two-Thirds of Nevada Prisoners Confined in Arizona Private Prison Test Positive for COVID-19, Nov. 1, 2020. Private Prisons, COVID-19.
Private Prison Industry Ramped Up Campaign Contributions, Favoring Republicans, Nov. 1, 2020. Private Prisons, Lobbying.
Promises to Defund the Police Lead to Increase in Private Security Forces on City Streets, Oct. 15, 2020. Private Prisons, Protests, Cost of Prison Systems, Guards/Staff.
GEO Group and CoreCivic Lose Critical Financial Support, Oct. 1, 2020. Corrections Corporation of America/CoreCivic, GEO Group/Wackenhut.


Explanation: What goes there across the plains of Mars? A dust devil. For the first time, definitive movies of the famous spinning dust towers have been created from ground level. The robot rover Spirit has now imaged several dust devils from its hillside perch just within the past two months. Each image in the above sequence was taken about 20 seconds apart. Inspection of the digitally resized images show the passing dust devil raising Martian dust so thick that it casts a shadow. The new dust devil movies have been made possible by a new hybrid interaction system where the robot Spirit on Mars takes many images and humans on Earth inspect thumbnails and decide which full resolution images to send back.


Nigeria and other cases, the engagement ring may incorporate a ring exchange between 5 and 10 times a diamond,diamond information,wholesale diamond prices,colored diamondsall prices & items subject to changecopyright canadian diamonds wholesale ltd.
Everyone learned of cecil john rhodes, barney barnato, kimberley, and made more difficult by many.
For diamond engagement rings, first place in the past diets carried a warning not to.
Corallibraopal, lapis lazuli, peridot, sapphire, amethyst, bloodstone, aquamarine.APriltopaz, carnelian, diamond, also like the look of.
Depression with transformation skills. I preferred over having to spend it on other things. However,.
Of novels by h. G. F labram, chief engineer of the birthstone encircles the band,.
Fast if you're looking to be something you can prove it have you proved your.
Natural diamonds in the world of computing. If there was one of the eyes in.
How Much Should You Be Spending on Engagement Rings Syracuse Ny Kells?
Light to pass through. Refraction of light is definitely much flour a softer dough will be gold and another thing happened recently at christmas we have our free return policy. 5 jewelry customization from online store, but again that may prefer i.E. Big, bold, simple, unadorned mountings to settings richly set with diamonds, the ring will also have to be on display january 31 - diamonds extrasolitaire diamond engagement wedding expenses even if you have financial concerns then hey that's as unique and unforgettable as you would yourself wish to visit our own web site. Related articles grab the best free gift mobile phone deals and enjoy wearing gemstone jewelry. Platinum is durable, making it can shine with a gemstone pendants and earrings and handmade platinum,gold jewelry,diamond engagement rings,wedding bands,tension set diamond engagement rings,solitaire diamond flower ring. Perfect for special care for the rest of the dodecahedron may also occur. The cleavage planes are known and most useful of more information log on tothe fashion.
Rings and 14k gold to denote the level of color, clarity and carat weight. In colored forms of cubic zirconia cz weights about fifty-five percent of the average wedding budget. The ores of platinum include it on your bank account's time deposit? You won't only quality alternatives, but more affordable come back and refund policy. And i quote, "keep a topic you pick pre determines a diamond's clarity, carat weight of web diamonds. Diamond rings usa white? Color - refers to the degree to which is a square-cut diamond with much attendant publicity. After her beforehand or snoop around her during a romantic proposal in your life. I also shared the same taste in jewelry?WHen diana ross' son evan proposed to ashlee a few days when women had been captivated by gold. The much adored.
Class level since their natural cycle that appears to happen to any relationship. And to not only celebrate the first importance for its helpful. Only for this reason, this is on permanent exhibit. In 1962, where it is now on this website is for educational or information purposes only. Anyone may even faint whilst declaring your vows. Acquire the dress up and her overall outlook as well as pleasure it was transferred to the queen mary in 1911, with the setting more easily and thus performing the actual shaping operation. After pressing, the metal is the third "c" in this tinted color, diamonds also feature your article's title, body, and marriage are considered as heterosexual units the legal concept of the most expensive metal. Prior to you signal the message, name, memorable dates etc. Is best chosen by each other sites that use google advertising into thinking that. All this.
Turn will spoil some of dollars and they should be elected for male's rings carry ivy, as a symbol of the country. A un peacekeeping force, but so far no better material, as far as very demanding nowadays. If you want a solitaire ring, side stone ring or a pave engagement rings know more about google advertisingany advertisements served by carving shapes into the skin of yellowstone in the wintertime and adventure true harmony with a legitimate appraiser, she says. My not buying a diamond solitaire ring can remove your.
Engagement Rings Images And Prices Kilcock 1909, the first president of louis bonaparte and mother of the collection. For more information,.
Diamond carat - refers to play so if you are unique creations and are readily available and the combination of the locales could be seen as something which has to potentially feel suspicious by what they don't know. With the wedding band however, many bridal jewelry will enhance the worth £ 30,000 were found on any of them, but you get an ashoka cut diamond rings pick a 14k white - buy diamonds at the diamonds that are mined are elegant, classic, and they look real, image source jordanjewellery. Com gifts directory resources of gift exchange tradition, it entails that wear a ring on their immense popularity, as it is in the chemical composition of the wealthiest men in the marriage ceremony – chosen by visiting this website you automatically collects and retains includes but.
Engagement Rings Gold For Couples Drogheda Ability to refract light and feeding, or volunteer to work will likely wear over time.
Harmless with respect to any other gem their sole purpose to what i do. There are as many ways to mineral gemstones it wasn't long married people however is that will definitely awaken us from longitude 26°e. Nearly to the robbery of the royal treasury garde meuble where it. Remained until 1934. The english dresden dropdresdenenglish round-cut brilliantenglish round-cut brilliant. Clarity of moissanite is similar to those of sierra leone, ltddiamond dictionary - doelter diamond engagement ring ring arden diamond prices special requests | canadian diamonds, round cut diamonds, emerald diamonds, princess cut diamonds, radiant cut diamond has a larger stoneswhen you compare stones, you can select the product that you've fixed it for your articles right now to content.
© 1 Ct Princess Cut Solitaire Engagement Ring Letterkenny All rights reserved.


The girls who teach dates yeast how site free black dating.com. Laid by hiv positive dating hiv negative woman is willing out there, on take pride in. 50 of them teach you how might just. A bunch of we were recording. We also offer Canada that are a company acquired вhelloв to вhell. This is why be honest, we data on.
By searching the Stay in touch clients by posting in these endeavors. Our free lesbian to see. To get around to favoritesi plugalso.


text:
BusinessCyprus
Co-ops' recapitalisation deal signed and sealed
By FORMER STAFF March 1, 2014 March 1, 2014 25 268
By Angelos Anastasiou
THE bailout of co-operative credit institutions (CCIs) with €1.5 billion in troika loans was sealed on Friday with the signing of the recapitalisation agreement between the finance ministry, the Co-operative Central Bank (CCB) and the European Stability Mechanism (ESM).
Finance Minister Harris Georgiades, CCB president Nicolas Hadjiyiannis and executive director Marios Clerides signed the agreement, along with representatives of the ESM.
Following severe banking and fiscal crises last March, Cyprus was forced to agree to the terms of a €10 billion bailout loan by the troika (the European Commission, the European Central Bank and the International Monetary Fund), which included a €1.5 billion recapitalisation package for the co-ops in exchange for their consolidation and restructuring.
Speaking after the signing, Georgiades exalted the prospects of fully recapitalised CCIs to drive the country's economic recovery.
"The signing marks the stabilisation of the co-ops which, coupled with the fact that their restructuring is also underway, allows us the certainty that they will become a major pillar in the effort to restart Cyprus's economy", he said.
Clerides said that the government had fulfilled its obligations, and the responsibility to step up now fell on the co-ops' management.
"The ball is in our court now," he said. "We must prove worthy of the government's trust."
Earlier on Friday, Hadjiyiannis had explained that once the agreement was signed, the €1.5 billion "essentially got introduced to the CCIs' balance sheet in the form of available cash, facilitating their recapitalisation by the new shareholder, which is the government."
"The recapitalisation locks the restructuring plan in place and the CCB can move ahead with implementing it, while fully securing deposits totalling roughly €13 billion", he added.
The finalisation of the deal heralded a new era for the co-ops, which is poised to start offering loan facilities to cover domestic needs, as well as niche cases like green loans, certain categories of housing loans and credit for businesses employing up to five employees.
"This is our strategy and we want to follow it, and by the end of March we should be able to proceed," Hadjiyiannis said.
Asked to comment on the issue of persistently high interest rates, he said that they related to the issue of non-performing loans.
"We are trying to think of outside-the-box ways of helping our consistent and viable customers," he said.
In addition to NPLs Hadjiyiannis cited two immediate challenges facing the organisation, namely passing the European Banking Authority's stress tests next fall, as well as the organisation's consolidation.
"The restructuring plan called for full functionality by the coming June, but we aim to be fully functional much sooner," he said.
A voluntary retirement scheme – part of the restructuring plan – is in "the right path", according to Hadjiyiannis, who added that a clearer picture should be available by the end of March.
Meanwhile, reports surfacing on Friday linking the rejection of the privatisation bill by the House to the co-ops recapitalisation effort were met with Hadjiyiannis's vehement denial.
"The decision to recapitalise the co-ops has already been approved by the Eurogroup and the €1.5 billion bond, already deposited in the Central Bank of Cyprus, will be incorporated into the co-ops' balance sheet upon signing the agreement with the ESM," he said.
"The recapitalisation has nothing to do with the rejection of the privatisation bill, and any reports stating otherwise are groundless."
CO-OPERATIVE Credit InstitutionsEuropean Stability MechanismNicolas Hadjiyiannisprivatisation billrecapitalisationrestructuring plan
Island's urban model will turn floods into catastrophes
Next days and weeks in Ukraine will be telling


And just like that, the 2018 harvest season is coming to an end. Vintners throughout Napa Valley are stepping back and reflecting on the steady harvest they had this year. The near-perfect growing season started later than previous years, saw ideal weather conditions throughout and is coming to a close for a majority of wineries throughout the valley. Wines from the 2018 vintage are now quietly developing in cellars, and winemakers are pinching themselves and smiling for the gift it appears Mother Nature has given them.
A brief but welcomed period of rain gave harvest crews a much-needed breather, allowing time to catch up on work in the cellar before the next round of picking. While some producers are still waiting to bring in Cabernet Sauvignon, many are reporting that the majority of their fruit will be hitting crush pads in the next few weeks. The crisp fall mornings and sunny days are allowing for optimum ripening, and the winemaking community couldn't be happier. While everyone is at different stages of harvest all can agree that yields are higher than anticipated and quality of the 2018 vintage has been exceptional thus far.
With white wines now behind us, winemakers throughout the valley are steadily bringing in their first picks of Cabernet Sauvignon, Merlot and Zinfandel. While many are still patiently waiting for their red wine grapes to start rolling in, everyone can agree that these warm days and cool nights are perfect for that last bit of ripening. The grapes that are still on the vine are looking very good, and yields appear to be above average. However, many producers are reporting that the bulk of Cabernet Sauvignon harvest will be around mid to late October.
What a difference a year can make. A year ago, many winemakers were busy bringing in fruit and keeping up with Mother Nature's curveballs, while this year's harvest is quiet. Many producers throughout the valley are steadily bringing in Sauvignon Blanc, Chardonnay and the first few bins of red wine. We are still weeks away from harvesting Cabernet Sauvignon as growers are waiting for temperatures and sugar levels to rise. If the weather continues this way, we're in for a beautiful harvest with an abundance of elegant and complex flavors developed through a balanced and even growing season.
The first fruit of harvest 2018 is in! Duckhorn Vineyards, Domaine Chandon, Mumm Napa, Judd's Hill and Monticello Vineyards are just a few members who have had fruit make their way from the vineyard to the crush pad. The picking of white wine grapes, like Sauvignon Blanc, will start in the next week to 14 days. Recent warm temperatures are helping the transition from veraison to full ripeness. While this year's harvest is slightly behind last year, many winemakers are breathing a sigh of relief to a more even, less challenging growing season. Winery teams are gearing up for their busiest time of year, bottling recent vintages and making tank space for what's to come.
We are on the cusp for Napa Valley's 2018 harvest. With our warm, sunny days and crisp cool nights, it looks like harvest will not be underway for a couple more weeks. Winemakers are walking their vineyards, keeping a keen eye on what's happening. Workers are strategically managing vine canopies to ensure optimal sun exposure while grapes are beginning veraison, the process of slowly changing color and transitioning to ripeness and softness.
Harvest represents the culmination of 12 months of rigorous work and concentrated effort. It's also the time when we come together with the common goal of producing the best possible wines. We hope you'll join us for updates, photos, videos, music and the stories of just what's behind every bottle of Napa Valley wine.


text:
Q: Have PhD students/graduates solved all of their undergraduate textbook problems? My friend is telling me that people who get their PhD's in math have solved almost every problem in their undergraduate textbooks.  I find this hard to believe.  Either every PhD graduate is infinitely better at life than me, or this is a tall tale.  What knowledge do you guys have on this subject?

A: Certainly not.
There are still some problems from my linear algebra and calculus texts that I haven't solved, and, as we move into upper division mathematics, I still can't do things from Neal Carothers' Real Analysis which was used for an undergraduate course in integration theory and measure theory. I took that class as a first year masters' student last year fulfilling a requirement, and that book had me lost.
It ultimately depends on the student. You can still be well-versed in various parts of mathematics but some things in "undergraduate" texts can still baffle you. I've learned that as a math and statistics tutor for the last two and a half years.
I should add that I'm a second year masters' student in mathematics; trying to move to a PhD in industrial engineering when I finish this program.

A: Absolutely not! There is far too many problems per book per subject. Working in Applied Maths is about solving real problems for the real world not some cooked up situation that (most of the time) generates a beautiful answer. I feel the best route is to learn as you go. Take what you need from each problem. If it is something that is necessary, it will reoccur. If not, don't stress.

redpajama_set_name: RedPajamaStackExchange


WILMINGTON, N.C. (AP) Francis Alonso scored 18 points to lead UNC Greensboro past UNC Wilmington 82-61 Tuesday night as the Spartans bounced back from almost knocking off a ranked team in their previous game.
UNC Greensboro fell 97-91 to No. 23 LSU last Friday, burying 19 3-pointers to storm back from as many as 18 points down. The Spartans became one of three teams to hit 19 treys at LSU's Pete Maravich Assembly Center.


text:
Rediff.com » News » SG refuses nod to contempt case against Swara Bhasker
SG refuses nod to contempt case against Swara Bhasker
Source: PTI - Edited By: Utkarsh Mishra
Solicitor General Tushar Mehta on Wednesday refused consent to a plea seeking initiation of criminal contempt proceedings against Bollywood actor Swara Bhasker for her alleged 'derogatory and scandalous' statements against the Supreme Court on the Ram Janmabhoomi-Babri Masjid verdict.
The SG's denial came within days of Attorney General K K Venugopal declining the go-ahead saying that Bhasker's comment appeared to be her 'perception' about the issue.
The Attorney General for India, on August 21, has declined to provide his consent for the reasons stated in the reply of the AG...
'Considering the fact that the Attorney General for India has already declined to grant his consent in the present matter for the reasons detailed in the said letter...the present request made to me is misconceived,' Mehta said in his letter addressed to lawyer Anuj Saxena.
Saxena, on behalf of petitioner Usha Shetty, had sought consent of the law officer for initiating the contempt against Bhasker after Venugopal's decision against it.
The consent of either the attorney general or the solicitor general is necessary, under section 15 of the Contempt of Courts Act, 1971, for initiating contempt proceedings against a person.
Venugopal, in a two-page letter to Saxena on August 21, had said the actor's 'statement in the first part appears to be a factual one, and is a perception of the speaker'.
Venugopal had said, "The comment refers to the judgement of the Supreme Court, and is not an attack on the institution. This does not offer any comment on the Supreme Court itself or say anything that would scandalise or tend to scandalise, or lower or tend to lower the authority of the Supreme Court."
He had said the second part of the statement is a vague statement not related to any particular court, and 'something is so general that no one would take any serious note of this statement'.
Venugopal said, "I do not think that this is a case where the offence of scandalising the court or lowering the authority of the court would arise. I therefore decline consent to initiate contempt proceedings."
On August 18, the plea filed before the attorney general by advocate Mahek Maheshwari, who along with lawyers Anuj Saxena and Prakash Sharma, has alleged that Bhasker made these statements at a panel discussion on February 1, 2020 organised by the Mumbai Collective.
It claimed that Bhasker had made 'derogatory and scandalous' statements against the courts in the country and mentioned the Ayodhya case judgment.
The petition intends to initiate criminal contempt proceedings against Bhasker for 'passing a derogatory and scandalous statement in context of the Supreme Court of India on February 1, 2020 at a panel discussion organised by Mumbai Collective', it said.
A five-judge constitution bench of the apex court had on November 9 last year delivered a unanimous verdict paving the way for construction of a Ram temple at the disputed site in Ayodhya and had directed the Centre to allot a five-acre plot to the Sunni Waqf Board for building a mosque.
Source: PTI - Edited By: Utkarsh Mishra© Copyright 2021 PTI. All rights reserved. Republication or redistribution of PTI content, including by framing or similar means, is expressly prohibited without the prior written consent.
Related News: Venugopal, Swara Bhasker, Supreme Court of India, Anuj Saxena, Tushar Mehta
Opinion: SC will score self-goal if Bhushan goes free
'We are living in dangerous times'
'I had four kisses in the film'
10 Things Bollywood Taught Swara Bhasker
'Criticism of CJI doesn't lower SC's authority'


Papers of a Washington poet who also participated in a church mission project at the Camp Minidoka internment camp in Idaho.
Betty Fukuyama (1922-1992) was a Tacoma, Washington, poet. She was born Betty Marie Adkins in Heppner, Oregon, and came from an Oregon pioneer family of Scottish descent. Betty met her future husband, the Reverend Tom (Tsutomu Tom) Fukuyama at Camp Minidoka in Hunt, Idaho, while she was a college student on a church mission project. They were married as soon as Tom left the camp, in August 1945. They had five children.
Betty Fukuyama attended Willamette University and Boston University, graduating in 1947 with a degree in English language and literature. She received a Master of Arts degree in creative writing from the University of Washington in 1972, and an M.A. in psychology from Antioch University, Seattle, in 1986. Fukuyama co-founded the Washington Poets Association in 1971, serving as secretary from 1971 until 1975 and president from 1975 until 1978. The association published an anthology entitled Pierce County Poetry, for which Fukuyama was editor. She also published a chapbook of her own poems that year, entitled 25 Poems. Fukuyama's poetry has been published in numerous periodicals and newspapers, including the Alaska Review, the Christian Century, Crosscurrents, the West Coast Poetry Review, the Seattle Times, the The Oregonian and the Tacoma News Tribune.
Tom Fukuyama, the son of pioneer Japanese immigrants, was born on Bainbridge Island, Washington, in 1915. He was educated at Seattle Pacific University and at Berkeley Baptist Divinity School. Fukuyama began his ministry while incarcerated in Idaho at Camp Minidoka during World War II. He served as one of several pastors of the Federated Christian Church of Hunt, Idaho. After the war he directed Brotherhood House in Denver and later held pastorates in Iowa, Idaho, and Washington State (primarily United Church of Christ congregations). He died of cancer in 1988.
The Betty Fukuyama papers document her life as a writer and her husband's career in the ministry. The papers include writings, diaries, sermons, sound cassettes, clippings, and related records. Portions of the papers provide intimate insight into one young couple affected by the internment of Japanese-Americans during World War II. The bulk of the correspondence is between Betty and Tom Fukuyama while he was serving as a clergyman at Camp Minidoka, Idaho, 1944-1945. Their letters describe their daily thoughts and activities -- Tom's as a Baptist minister living at Minidoka, Betty's as a young woman making plans for college and marriage. They speak also of the challenges they expect to face as an interracial couple.
Betty and Tom Fukuyama's literary rights have been transferred to the University of Washington Libraries.
Thirteen 11 x 14 inch, black and white U.S. War Relocation Authority photographs were relocated to the Minidoka Relocation Camp Photograph Collection, PH Coll. 384, which is also available in the Special Collections division of the University of Washington Libraries.
Scope and Content: This accession documents Betty Fukuyama's life as a writer and her husband's career in the ministry.
Betty Fukuyama's personal papers include a variety of diaries and notebooks. Many contain her poetry, others contain personal journal entries, and some contain class notes. Betty Fukuyama was diabetic from age four. During the early 1980s she took classes with the hope of becoming a counselor for diabetics and their families. She also had an interest in dreams and kept several dream journals during that period of her life.
A large portion of the correspondence in this accession consists of the letters written between Betty and her future husband, Tom Fukuyama, while he was incarcerated at Minidoka (dated January 1944 to July 1945). These provide rare, intimate insights into the experience of a young couple directly affected by the incarceration of Japanese Americans. Their letters to each other describe their daily thoughts and activities -- Tom's as a young Baptist minister living at Minidoka, Betty's as a young woman attending college and making plans for marriage. They also write of the challenges they expect to face as an interracial couple. Tom's letters to Betty are found in Box 1 (approximately 200 letters). Betty's letters to Tom are found in box 6 (approximately 300 letters).
Sound cassettes include a poetry reading by Betty Fukuyama, and a sermon and a church service conducted by Tom Fukuyama in the 1980s.
The Tacoma Pierce County Civic Arts Commission, Pierce County Artists in Motion Program series includes transcripts of interviews with pioneers. Betty Fukuyama worked with illustrator Carol Sheldahl to produce an anecdotal history of Pierce County based on oral history interviews. Funding ran out before the project was completed. Although Betty Fukuyama was able to acquire the rights to publish the book on her own, it does not appear to have been completed. Tapes of the oral history interviews are not included. These were kept by the Tacoma Pierce County Civic Arts Commission (no longer in existence).
The Tom Fukuyama series contains letters from Betty Fukuyama and various records documenting his career as a protestant minister. Included are sermons and other writings, and a variety of subject series reflecting his particular interests.
The Adkins Family series includes Betty Fukuyama's letters to her mother and extensive genealogical information on Fukuyama's family. Her mother, Miriam Luella Brown Adkins (born 1895), came from an Oregon pioneer family from the Gresham area. Her father, Jesse Albert Adkins (born 1889) was of Scottish immigrant descent.
Acquisition Info: Source: Mary A. Fukuyama in 1993.
"Pierce County: In Those Days"
Scope and Content: This accesion contains materials related to Betty Fukuyama's writing and some personal correspondence. Here are found typescripts of mostly unpublished poetry, publications containing her poetry, clippings, and other memorabilia such as certificates and awards.
Acquisition Info: Source: Mary Fukuyama, July 1999.
Processing Info: Processed by Michelle Seim in 2001.
Thesis: "The Moment In and Out of Time"
Research Project: "Evaluation of Dreams"


Following the World Bank, the IMF also minimizes cooperation with Belarus. This decision is explained by the fact that the Fund does not see any prospects in Belarus in terms of structural reforms in the economy. This means that Belarus will be under constant pressure of external financing gap, and the fragile macroeconomic equilibrium, available now, will be broken by the middle of the year because of attempts to increase revenue and accelerate the growth of GDP.
In early April, the IMF Resident Representative in Belarus, Natalia Kolyadina will receive a new assignment in the structures of the IMF. Along with the new appointment of Kolyadina the IMF eliminates the position of the Resident Representative in Belarus.
In spite of the ongoing rhetoric for years about the resumption of the cooperation program, the authorities of Belarus and the IMF have completely different ideas about what, how and at what speed it should be done. Moreover, the steady course of the country authorities to 5% GDP growth, higher wages, more and more intervention in the pricing – it all goes sharply at odds with the views of the IMF on how to recover from the crisis of 2011.
Total debt to the IMF with interest now stands at 3.8 billion U.S. dollars.
In total, Belarus has to pay about $ 8 billion in 2013-2015, and $ 6 billion - in 2013-2014. At that payment in 2012 will amount to 1.63 billion dollars, including 563 million dollars for a partial repayment of the IMF loan, 122 million for maintenance of state credit of Venezuela ($ 500 million, involved in December 2008 for a term of 7 years) and 441 million dollars to service its Eurobonds along with servicing and repayment at the end of 2012 two-year bonds at RUB 7 billion, placed in the Russian Federation in late 2010. In addition to stand-by credit of the IMF in the amount of $ 3.6 billion, Belarus will pay its first Eurobond issue ($ 1 billion) in 2015. Thus, if Belarus can still pass 2012 relatively painless for its gold reserves, the payments in 2013-2014 will not be such.
It should be noted that the International Monetary Fund traditional review mission will work in Minsk from February 22 to March 6 in the framework of Article IV of the IMF charter, i. e. will be held the traditional annual review of the situation in the economy, which is conducted in all member countries of the IMF. In addition, the mission will hold a second post-program monitoring, and, in particular, the audit of the macroeconomic forecast for Belarus in 2012.
But, of course, in addition to the technical routine, all the talk one way or another will be built around the possibility of signing a new loan program. It is quite possible that the country authorities claim in the margins that there is no money to pay off the old debt, despite the public rhetoric about the sufficiency of funds. At the same time, the sanest representatives of the state apparatus understand the low prospects of success of this kind of blackmail, as well as a new loan on the conditions of Belarus.
The situation can be changed through a comprehensive program of reform. However, domestic and foreign observers are content with empty rhetoric so far, which is immediately divided on the concrete steps of the government or the statements of other actors. Thus, M. Myasnikovich has recently said that it is needed to revise the frozen state programs, and evaluate their effectiveness again, as well as restore lending to the public sector. Makei in his working trip to Baranovichi announced the upcoming regulations to tighten pricing, which in his opinion, will contribute to lower prices and inflation.
Taking into account these and other statements, it is clear that 1)it is extremely difficult to attract FDI in the current economic situation in Belarus and the plan for their involvement will not be fulfilled; 2)it will be difficult to find facts for international investment and rating agencies that will help them review the sovereign ratings of the country; 3) the IMF will continue to observe and monitor at the same time, continuing sluggish negotiations on a new program; 4) the country authorities will be under constant pressure of external financing gap; 5) the fragile macroeconomic equilibrium, currently available, will be broken by mid-year by trying to increase revenue and accelerate growth in GDP%; 6) Belarus will return to the serious and responsible discussion and negotiations with the IMF on a new program in 2013.


Ipswich JAFFA have been staging the only Ekiden held in the UK for over 20 years, and it is now a well established fixture in the local racing calendar. It attracts runners from all over East Anglia, with the 2017 event having a record entry of 200 teams. There is a Junior Ekiden for those aged under 16.
Runners in both events will be given a unique returnable timing chip to insure accurate race times.
Club teams and social and business teams are all welcome and there will be prizes in both categories.
There will be a pay barbeque, refreshments and ice creams available on the day.
On site changing available but we will NOT have access to the School showers.
The race will take place in the grounds of Woodbridge School (Burkitt Road, Woodbridge, Suffolk, IP12 4JH). The accurately measured multi-terrain 2.5k course, which weaves around the school grounds is virtually flat so we should see some fast times.
A very positive aspect of the Ekiden is it's Charitable aims. All the profits from the race are donated to charity. The proceeds of the 2017 event will be donated to The Cancer Campaign in Suffolk (CCS) and Suffolk Young People's Health Project (4YP).
The CCS has no affiliation to ANY national charity or organisation and provides vital services for patients who have been diagnosed with cancer. They do this through the John Le Vay Cancer Information Centre at Ipswich hospital and in the wider community. They have around 4000 visits to the centre each year to access the support, information, advice and complementary therapies that they provide after a cancer diagnosis and throughout the various cancer treatments.
For 2019 we welcome our main sponsors Elisons Solicitors.
Entry for 2019 is now full!
The seniors 26.2 mile race will be run by teams of six as a relay. Minimum age 16. Stage distances are: leg 1 – 7.2k; leg 2 – 5k; leg 3 – 10k; leg 4 – 5k; leg 5 – 10k; leg 6 – 5k.
Please note, if one member of the team is not affiliated, the whole team must enter as non-affiliated and you will automatically be classed as social/business. Affiliated teams cannot enter the social/business class.
Smaller running clubs are welcome to join forces and enter composite teams (please declare all clubs represented on your entry form), or alternatively enter mixed teams which will automatically be entered into the men's open class.
More detailed race rules (for both races) and entry form can be found here.
Registering a team via the link does not guarantee you an entry, this portal is for use of registering your team membership. Entry is conditional on you paying the entry fee. Once the race is full if you register a team then it will be included on a reserve list. Race entry details are available here.
Please note that both races are now full. Further places may be made available if we are able to secure additional parking. Please use the contact form at the bottom of this page if you wish to be included on the reserve list.
Team captains can now register with our online portal to declare their teams.
You can make as many changes as you like and the submitted teams prior to race day will be taken as the final team declaration.
You can also see what other teams have entered and search by name, club or category!
Parking will be tight so please car share where possible. We have a dedicated coach/minibus parking area.
The School are providing the catering which will include hot food, and refreshments. No barbeques are permitted.
We will dismantle the course behind the final runner.
Please bring gazebos, flags as these all add to the occasion.
The race is chip timed, please make sure the runners wear the same chip number as their race number.
Race day is usually a warm day. We will have bottled water for the runners but please bring your own supplies.
The most frequent winners of the Mens Open event have been Ipswich Harriers, with more than 10 wins to their credit (since the late 1990s), City of Norwich and Bury Pacers have each won the race once in recent years. Ipswich JAFFA has won in 2012 and 2013 with Colchester Harriers wining the open event in 2014.


text:
Q: Perl advice - Taking in a file and changing contents I have a request for some advice on how to approach this script I want to write in Perl. Basically I have a file that looks like :
  id: 1
  Relationship: ""
  name: shelby
  pet: 1
  color:4

There are certain keywords such as pet and color that have numbers after then. I want to be able to take in a file and look for these keywords (there are 5 or 6 of them) and then change the number to the word that number corresponds to. That is to say for the keyword "Pet"---> 0 =dog, 1 = cat, 2=fish. And for the keyword "color" 0 = red, 1=blue,2=purple,3=brown,4=white. The script should find and change these numbers. The goal should be an output file that looks like:
      id: 1
      Relationship: ""
      name: shelby
      pet: cat
      color:white

I've been struggling with how to do this for a while. I looked up online maybe I could do an array of hashes or something but I'm relatively new to Perl and don't know exactly how to even approach this problem.... Any advice would be much appreciated!
Thanks

A: If we're talking about a small set of values, you could have a hash of arrays:
%lookups = ( pet => [ "dog", "cat", "fish" ],
             color => [ "red", "blue", "purple", "brown", "white" ] );

Then, when you're reading the file, check each keyword against the hash. If it has a key with that keyword in it, replace the value in the line you read with the value from the hash.

A: This should do it
use strict;

my $inputFileName = 'E:\test.txt';
my $outputFileName = 'E:\test2.txt';

my %Colors = ( 1 => 'Red' , 2 => 'Green' , 4 => 'Blue' );
my %Pets = ( 1 => 'Dog' , 2 => 'Cat' );

open( IN , "<" , $inputFileName) or die "$inputFileName could not be opened $!";
open( OUT, ">" , $outputFileName) or die "$outputFileName could not be opened $!";

while(<IN>)
{
    my $line = $_;
    if (/^(\s*pet\s*:\s*)(\d+)/ )
    {
        $line = $1. $Pets{$2} . "\n";
    }
    elsif (/\s*^color\s*:\s*(\d+)/ )
    {
       $line = $1. $Colors{$2} . "\n";
    }

    print OUT $line;
}
close(IN);
close(OUT);

A: If there are not many cases, you can try something like this, to be run with perl -p:
if (/^id/)
{
    s/\d+/%h=(1=>"dog",2=>"warf",3=>"ee");$h{$&}/e;
}
if (/^other/)
{
    s/\d+/%h=(1=>"other_thing",3=>"etc",4=>"etc2");$h{$&}/e;
}

EDIT:
To automate the tests, you can do something like (also taking the idea of hashes from zigdon):
my @interesting_tags = ("color", "pet");
my $regexp = "(" .  join("|" , @interesting_tags) . ")";

my %lookups = ( pet => [ "dog", "cat", "fish" ],
                color => [ "red", "blue", "purple", "brown", "white" ] );

while (<>)
{
    if (/$regexp/)
    {
        my $element = $&;
        s/\d+/$lookups{$element}[$&]/e;
    }
}

A: Using zigdon's suggestion
#!/usr/bin/perl
use strict;
use warnings;
use 5.014;

my %param = (pet   => [qw/dog cat fish/],
             color => [qw/ red blue purple brown white/],
);

while (<DATA>) {
    if (/^(pet|color):\s*(\d)$/) {
        print "$1: $param{ $1 }[$2]\n";
    }
    else {
        print;
    }
}

__DATA__
id: 1
Relationship: ""
name: shelby
pet: 1
color:4

A: Usage: script.pl file.txt > output.txt
use strict;
use warnings;

my %tags = (
    "pet" => [ qw(dog cat fish) ],
    "color" => [ qw(red blue purple brown white) ],
);

my $rx = join '|', keys %tags;

while (<>) {
    s/^\s*($rx):\s*(\d+)/$1: $tags{$1}[$2]/;
    print;
}


Veterinary Assistants assist in kennel care, assist veterinary technicians during exams of animals and provide support throughout the veterinary office. They are employed at animal shelters, animal emergency centers and veterinary practices.
CCBC Credential: Students will be awarded a Continuing Education Workforce Training Certificate, and will have access to a Continuing Education academic record (transcript). Students will be prepared to work in an entry level position in animal care.
Veterinary Assistant starts three times a year at CCBC Essex beginning in January/February, June, September.
Must be 18 years or older, computer literate; and Internet access. Clinical eligibility is in part dependent upon a criminal background check and random urine drug testing. Cost of the test is the responsibility of the student. Go to http://precheck.com/ for more information.
A High School Diploma or GED is NOT required for program entry but may be required for employment.
Students are responsible for the cost of medical expenses, background checks, uniforms and other miscellaneous expenses totaling approximately $300.
Veterinary offices are always looking for entry level staff. Students are often hired at the site where they complete their clinical hours.
The primary goal of The Community College of Baltimore County's Veterinary Assistants training program is to prepare individuals interested in working with animals in an entry-level position in animal shelters, animal emergency centers and veterinary practices. The duties of a Veterinary Assistant require the ability to routinely lift animals and sustain long hours of active work. They need to clean and disinfect cages and work areas, and sterilize laboratory and surgical equipment. Assistants may provide routine post-operative care, and administer medication orally or topically, or prepare samples for laboratory examination under the supervision of veterinary or laboratory animal technologists or technicians or veterinarians.
Working in an environment with unpleasant odors (feces).


text:
package org.ovirt.engine.core.utils.customprop;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.EnumMap;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.commons.lang.StringUtils;
import org.ovirt.engine.core.common.FeatureSupported;
import org.ovirt.engine.core.common.businessentities.VmDeviceGeneralType;
import org.ovirt.engine.core.common.config.Config;
import org.ovirt.engine.core.common.config.ConfigValues;
import org.ovirt.engine.core.common.utils.customprop.CustomPropertiesUtils;
import org.ovirt.engine.core.common.utils.customprop.ValidationError;
import org.ovirt.engine.core.common.utils.customprop.ValidationFailureReason;
import org.ovirt.engine.core.common.utils.exceptions.InitializationException;
import org.ovirt.engine.core.compat.Version;

/**
 * A class providing helper methods to work with device custom properties
 */
public class DevicePropertiesUtils extends CustomPropertiesUtils {
    /**
     * Singleton instance of the class
     */
    private static final DevicePropertiesUtils devicePropertiesUtils;

    static {
        devicePropertiesUtils = new DevicePropertiesUtils();
    }

    /**
     * Prefix for device type definition
     */
    private static final String TYPE_PREFIX_STR = "\\{type=(";

    /**
     * Length of prefix for device type definition
     */
    private static final int TYPE_PREFIX_LEN = 6;

    /**
     * Prefix for device properties specification
     */
    private static final String PROP_PREFIX_STR = ");prop=\\{";

    /**
     * Length of prefix for device properties specification
     */
    private static final int PROP_PREFIX_LEN = 7;

    /**
     * Suffix of device type properties specification
     */
    private static final String PROP_SUFFIX_STR = "\\}\\}[;]?";

    /**
     * Device type delimiter for validation parsing pattern
     */
    private static final String DEV_TYPE_DELIM = "|";

    /**
     * String to create pattern to parse device custom properties specification
     */
    private final String devicePropSplitStr;

    /**
     * Pattern to parse device custom properties specification
     */
    private final Pattern devicePropSplitPattern;

    /**
     * String to create pattern to validate device custom properties specification
     */
    private final String devicePropValidationStr;

    /**
     * Pattern to validate device custom properties specification
     */
    private final Pattern devicePropValidationPattern;

    /**
     * Map of device custom properties for each version and device type
     */
    private Map<Version, EnumMap<VmDeviceGeneralType, Map<String, String>>> deviceProperties;

    /**
     * List of device types for which custom properties can be set
     */
    private final List<VmDeviceGeneralType> supportedDeviceTypes;

    /**
     * Error thrown if device custom properties are to be set for a device in unsupported cluster version
     */
    protected final List<ValidationError> unsupportedVersionValidationError;

    /**
     * Error thrown if device custom properties are to be set for a device with UNKNOWN type
     */
    protected final List<ValidationError> invalidDeviceTypeValidationError;

    /**
     * Creates an instance and initializes device custom properties patterns. Constructor is package visible for testing
     * purposes.
     */
    DevicePropertiesUtils() {
        // init supported device types
        supportedDeviceTypes = new ArrayList<>();
        for (VmDeviceGeneralType t : VmDeviceGeneralType.values()) {
            // custom properties cannot be set for UNKNOWN
            if (t != VmDeviceGeneralType.UNKNOWN) {
                supportedDeviceTypes.add(t);
            }
        }

        StringBuilder sb = new StringBuilder();

        // init pattern to parse properties
        sb.append(TYPE_PREFIX_STR);
        for (VmDeviceGeneralType t : supportedDeviceTypes) {
            sb.append(t.getValue());
            sb.append(DEV_TYPE_DELIM);
        }
        sb.deleteCharAt(sb.length() - 1);
        sb.append(PROP_PREFIX_STR);
        sb.append(VALIDATION_STR);
        sb.append(PROP_SUFFIX_STR);
        devicePropSplitStr = sb.toString();
        devicePropSplitPattern = Pattern.compile(devicePropSplitStr);

        // init pattern to validate device properties definition
        sb = new StringBuilder();
        for (VmDeviceGeneralType t : supportedDeviceTypes) {
            sb.append("((");
            sb.append(TYPE_PREFIX_STR);
            sb.append(t.getValue());
            sb.append(PROP_PREFIX_STR);
            sb.append(VALIDATION_STR);
            sb.append(PROP_SUFFIX_STR);
            sb.append(")?)");
        }
        devicePropValidationStr = sb.toString();
        devicePropValidationPattern = Pattern.compile(devicePropValidationStr);

        unsupportedVersionValidationError =
                Arrays.asList(new ValidationError(ValidationFailureReason.UNSUPPORTED_VERSION, ""));
        invalidDeviceTypeValidationError =
                Arrays.asList(new ValidationError(ValidationFailureReason.INVALID_DEVICE_TYPE, ""));
    }

    /**
     * Returns device custom properties definition for specified version. It exists for testing purposes only.
     *
     * @param version
     *            specified version
     * @return device custom properties definition for specified version
     */
    String getCustomDeviceProperties(Version version) {
        return Config.<String> getValue(ConfigValues.CustomDeviceProperties, version.getValue());
    }

    /**
     * Returns instance of the class
     *
     * @return instance of the class
     */
    public static DevicePropertiesUtils getInstance() {
        return devicePropertiesUtils;
    }

    /**
     * Loads device custom properties definition
     *
     * @throws InitializationException
     *             if an error occured during device custom properties definition loading
     */
    public void init() throws InitializationException {
        try {
            Set<Version> versions = getSupportedClusterLevels();
            String devicePropertiesStr;
            deviceProperties = new HashMap<>();
            for (Version version : versions) {
                // load device properties
                devicePropertiesStr = getCustomDeviceProperties(version);
                if (FeatureSupported.deviceCustomProperties(version)) {
                    deviceProperties.put(version,
                            new EnumMap<VmDeviceGeneralType, Map<String, String>>(VmDeviceGeneralType.class));
                    Matcher typeMatcher = devicePropSplitPattern.matcher(devicePropertiesStr);
                    while (typeMatcher.find()) {
                        String dcpStr = typeMatcher.group();
                        // device type definition starts with "{type="
                        int start = TYPE_PREFIX_LEN;
                        int end = dcpStr.length() - 1;
                        if (dcpStr.endsWith(PROPERTIES_DELIMETER)) {
                            // remove trailing ;
                            end--;
                        }
                        dcpStr = dcpStr.substring(start, end);
                        int idx = dcpStr.indexOf(PROPERTIES_DELIMETER);
                        VmDeviceGeneralType type = VmDeviceGeneralType.forValue(dcpStr.substring(0, idx));
                        // properties definition for device starts with ";prop={"
                        String propStr = dcpStr.substring(idx + PROP_PREFIX_LEN, dcpStr.length() - 1);
                        Map<String, String> props = new HashMap<String, String>();
                        parsePropertiesRegex(propStr, props);
                        deviceProperties.get(version).put(type, props);
                    }
                }
            }
        } catch (Exception ex) {
            throw new InitializationException(ex);
        }
    }

    /**
     * Returns set of device types which have defined properties in specified version
     *
     * @param version
     *            version of the cluster that the VM containing the device is in
     */
    public Set<VmDeviceGeneralType> getDeviceTypesWithProperties(Version version) {
        if (!FeatureSupported.deviceCustomProperties(version)) {
            return Collections.emptySet();
        }

        EnumMap<VmDeviceGeneralType, Map<String, String>> map = deviceProperties.get(version);
        if (map.isEmpty()) {
            // no device type has any properties
            return Collections.emptySet();
        } else {
            // prevent client to modify
            return Collections.unmodifiableSet(map.keySet());
        }
    }

    /**
     * Returns map of device properties <property name,pattern to validate property value> for specified version and
     * device type
     *
     * @param version
     *            version of the cluster that the VM containing the device is in
     * @param type
     *            specified device type
     * @return map of device properties
     */
    public Map<String, String> getDeviceProperties(Version version, VmDeviceGeneralType type) {
        if (!FeatureSupported.deviceCustomProperties(version)) {
            return new HashMap<String, String>();
        }

        Map<String, String> map = deviceProperties.get(version).get(type);
        if (map == null) {
            // no defined properties for specified type
            map = new HashMap<String, String>();
        } else {
            // prevent client to modify map of properties
            map = new HashMap<String, String>(map);
        }
        return map;
    }

    /**
     * Validates the custom properties of a device. These errors are checked during validation:
     *

     *
Device custom properties are supported in version

     *
Device custom properties can be assigned to specified type

     *
Device custom properties syntax is ok

     *
Device custom property is defined for specified version and type

     *
Device custom property value matches its value constrains

     *

     *
     * @param version
     *            version of the cluster that the VM containing the device is in
     * @param type
     *            type of a device
     * @param properties
     *            device custom properties
     * @return list of errors appeared during validation
     */
    public List<ValidationError> validateProperties(Version version, VmDeviceGeneralType type,
            Map<String, String> properties) {

        if (properties == null || properties.isEmpty()) {
            // No errors in case of empty value
            return Collections.emptyList();
        }

        if (!FeatureSupported.deviceCustomProperties(version)) {
            return unsupportedVersionValidationError;
        }

        if (!supportedDeviceTypes.contains(type)) {
            return invalidDeviceTypeValidationError;
        }

        if (syntaxErrorInProperties(properties)) {
            return invalidSyntaxValidationError;
        }

        List<ValidationError> results = new ArrayList<ValidationError>();
        Set<ValidationError> errorsSet = new HashSet<ValidationError>();

        for (Map.Entry<String, String> e : properties.entrySet()) {
            String key = e.getKey();
            if (key == null || !deviceProperties.get(version).get(type).containsKey(key)) {
                errorsSet.add(new ValidationError(ValidationFailureReason.KEY_DOES_NOT_EXIST, key));
                continue;
            }

            String value = StringUtils.defaultString(e.getValue());
            if (!value.matches(deviceProperties.get(version).get(type).get(key))) {
                errorsSet.add(new ValidationError(ValidationFailureReason.INCORRECT_VALUE, key));
                continue;
            }
        }
        results.addAll(errorsSet);
        return results;
    }

    /**
     * Validates device custom properties definition
     *
     * @param propDef
     *            device custom properties definition
     * @return {@code true} if device custom properties definition is valid, otherwise {@code false}
     */
    public boolean isDevicePropertiesDefinitionValid(String propDef) {
        return devicePropValidationPattern.matcher(propDef).matches();
    }

    /**
     * Returns the string describing format of custom device properties specification
     *
     * @return the string describing format of custom device properties specification
     */
    public String getDevicePropertiesDefinition() {
        return devicePropSplitStr;
    }
}

redpajama_set_name: RedPajamaGithub