text:
Banks Lake, Washington, USA
Banks Lake is a 27 mile equalizing reservoir and part of the Columbia Basin Project, a major water resource project to provide irrigation water to fertile but arid land in central Washington. It was created when two rock-faced, earthfill dams were built at the ends of a large channel sculpted during the Ice Age. Banks Lake was named after Frank A. Banks, chief construction engineer of the Grand Coulee Dam, – READ THE FULL ARTICLE
Welcome to the ultimate guide to Banks Lake! Article topics include:
All About Banks Lake
Banks Lake Map
Looking for Banks Lake cabins or other accommodations? Save time and use this interactive map to find, compare and book at the best rates. Or explore more of our favorite travel partners.
Banks Lake Gifts
Lake Locations: USA - West - Washington - North Central Washington -
Banks Lake is a 27 mile equalizing reservoir and part of the Columbia Basin Project, a major water resource project to provide irrigation water to fertile but arid land in central Washington. It was created when two rock-faced, earthfill dams were built at the ends of a large channel sculpted during the Ice Age. Banks Lake was named after Frank A. Banks, chief construction engineer of the Grand Coulee Dam, the main feature of the Columbia Basin Project.
Water for Banks Lake is pumped from Lake Roosevelt through the Banks Lake Feeder Canal and then into Banks Lake. Water is held in Banks Lake until needed for irrigation but the active storage can be replaced seven or eight times a year depending on demand for irrigation. Water is typically pumped into Banks Lake from May to September during the typical growing seasons on area farms. The final weeks of pumping build a reserve in Banks Lake that may be held until needed in late fall or early spring before pumping begins again next May.
Although the water in Banks Lake is drawn down several times, the minimum water surface elevation is 1560 feet. Fishing at Banks Lake offers the avid angler opportunities for small and large mouth bass, yellow perch, rainbow trout, walleye, kokanee, black crappie, bullhead, and whitefish.
For recreational opportunities at Banks Lake, visit Steamboat Rock State Park which offers a 3,522 acre camping facility with 50,000 feet of waterfront access for swimming, fishing, boating, and other water activities. There are seven boat ramps at three different sites along Banks Lake with 320 feet of dock reserved for boat handling only. In addition to typical water sports, rock climbing is also offered at the park. During the winter, skiing is permitted on the many trails throughout the park.
The Banks Lake area is uncrowded with much of the land used for farming. Located at the north end of Banks Lake is the city of Grand Coulee with a reported population of 897 in the 2000 census. On the south end of Banks Lake is the town of Coulee City with a population of 600 in the 2000 census.
Although Banks Lake was originally formed for irrigation, it has become an oasis in the desert for those seeking recreation and relaxation.
Things to Do at Banks Lake
Fish Species Found at Banks Lake
Black Crappie
Kokanee Salmon
Best hotels and vacation rentals at Banks Lake
The Banks Lake map shown above is a simple and stress-free way to search for trip accommodations. But if you want to take a deeper dive to find the ideal waterfront home, cabin, condo, hotel or resort, visit our favorite lodging partners by clicking the buttons below.
More Ways to Book a Banks Lake Vacation
More Sites to Book a Banks Lake Vacation
Recommended Sites to Book a Banks Lake Vacation
If you want to take a deeper dive to find waterfront lake cabins, cottages, condos, hotels or resorts, check out our favorite Banks Lake lodging partners.
Banks Lake Photo Gallery
Banks Lake Statistics & Helpful Links
Water Level Control: Bureau of Reclamation
Maximum Depth: 177 feet
More Banks Lake news from LakeLubbers.com
The Banks Lake forum has been discontinued: HERE'S WHY
New Banks Lake photos coming soon!
Share this Banks Lake article with your fellow LakeLubbers:
Advertise your Banks Lake vacation rental
Do you have a vacation rental property at Banks Lake? Coming in 2022, LakeLubbers will have an opportunity for you to showcase your listing and put it in front of thousands of lake lovers searching our site for homes, condos or townhomes to rent for their upcoming lake trip this season.
Looking for the Banks Lake forum?
Click here to advertise your Banks Lake vacation rental or local business.
The former Banks Lake forum is closed. Find out why here.
New Banks Lake photo gallery is coming soon.
Spread the word! Share our Banks Lake article with your fellow Lake Lubbers!
Explore local Banks Lake vacation rentals and hotel accommodations using our interactive map. Clicking on listings below will allow you to compare nearby properties, best rates and availability for your dates.
Looking for the old Banks Lake forum group? Click Here
More featured Banks Lake rental properties
Find custom Banks Lake gifts


On 13 March 2018, the UK government completed the final ratification step for the UK to join the Hague Agreement for industrial designs. The agreement will come into effect on 13 June 2018. From this date, it will be possible to designate the UK and obtain registered design protection in the UK directly via the Hague System.
This is good news for designers who will be able to use the Hague System to secure international design protection covering both the UK and the EU, even after the UK leaves the EU in March 2019.
At present, it is possible to protect a design in the UK and the EU via a single registered Community design. However, this route will be closed once the UK leaves the EU since the UK will no longer be covered by registered Community design protection. The Hague System will provide a solution to this issue by once again enabling designs to be protected by a single registration that covers both the UK and the EU.
What is the Hague System?
The Hague System provides a cost-effective way to secure international registered design protection in the countries that are signed up to the agreement. At present, there are 67 contracting countries (shown here), including the US, Japan, Russia and the European Union. More countries, such as China and Canada, are set to join in the near future.
Who can use the Hague System?
The system is only available to those that are a national of, domiciled in or have a real and effective industrial or commercial establishment in a Hague Agreement contracting country.
The design (appearance) of almost any product, graphic symbol, graphical user interface (GUI) or logo.
A single international registered design application is filed with the International Bureau of the World Intellectual Property Organisation (WIPO).
An international application can cover up to 100 different designs, provided that the designs all fall under the same class (i.e. the designs are related to similar products).
WIPO only checks that the formal requirements are met – there is no search or substantive examination to check the novelty or individual character of a design.
Substantive examination is carried out only in those countries where this is a requirement (e.g. US).
WIPO registers the design(s) centrally if there are no objections from the offices in the designated countries, or once any objections have been overcome.
How long does an international design registration last?
An international design registration provides an initial 5 year term of protection from the filing date. A single renewal fee can be paid every 5 years to renew the registration for a total of 15 years. The term of protection is longer when permitted by national law (e.g. 25 years for the UK or the EU).
What are the benefits of using the Hague System?
A single international design registration covers any or all of the Hague Agreement contracting countries – more cost-effective than filing separate design applications in each country.
One renewal fee to renew the international registration – as opposed to separate renewal fees in each country.
No need to prepare translations for different countries – just one language required for an international application; English, French or Spanish.
Hague System minimises the risk of running into formalities objections (and the associated costs) since it is not possible for national offices to object to an international design application for formal reasons.
As of 13 June 2018, the Hague System will enable designs to be protected in the UK and the EU via a single international registration, even after the UK leaves the EU.


text:
Church Brothers Farms acquires Green Giant Fresh
Church Brothers Farms has acquired the Green Giant Fresh value-added vegetable business from Growers Express.
Church Brothers Farms has acquired the Green Giant Fresh value-added vegetable business from Growers Express. At the time of this publication, details of the transaction were not disclosed.
The acquisition includes Growers Express' production facility and equipment located in Gonzales, California.
Church Brothers Farms will absorb the acquired value-added vegetable product line into its existing Green Giant Fresh sublicense with Growers Express. The company is integrating over 130 Growers Express' value-added fresh employees into its operation, the majority of which are expected to join the company in conjunction with the transaction.
This is Church Brothers Farms second acquisition from Growers Express within the past year; the company acquired Growers Express' fresh vegetable commodity business in January 2019. With this most recent acquisition, the entire fresh vegetable program of Growers Express is now folded into Church Brothers Farms.
Church Brothers Farms will continue to grow raw product for the Green Giant™ Fresh value-added vegetable business.
This second acquisition will provide instant expansion for Church Brothers Farms into a number of high growth, value-added categories such as Brussels sprouts, riced vegetables, vegetable noodles, single serve vegetable bowls and Little Gem lettuce.
Rick Russo, Church Brothers Farms' vice president of strategic growth and planning, said the acquisition of a value-added fresh vegetable product line will enhance the company's growing retail offering.
"Taking over an existing program allows us to invest in innovation that will build our business as we expand our capabilities and resources," Russo says. "The expansion of our existing value-add salad and vegetable program will also allow us to offer more to our foodservice customers. The location of the Gonzales facility is ideal because it is where our Green Giant Fresh commodity program is shipped from and maintaining the employees there will provide continuity in service and quality assurance."
Growers Express retains its frozen cut vegetable business that includes noodles, rice and cut vegetables. Additionally, Growers Express retains the master licensing agreement for the Green Giant™ Fresh brand.
Tom Byrne, president of Growers Express, says, "This is a mutually beneficial scenario that allows us to focus on our frozen vegetable business while we partner with Church Brothers and other vegetable growers to expand into new products and categories with our successful Green Giant™ Fresh licensed brand. Church Brothers Farms has been a true partner for many years, and we've come closer together during the past year as we integrated our commodity team into the Church Brothers family. I am confident this transition will be as successful and that it will allow both organizations to leverage our strengths for mutual gain."
Growers Express also operates a cooling facility in Gonzales, a processing facility in Biddeford, Maine and a frozen processing operation in Yuma, Ariz., that are not included in this transaction. This transaction is a continuation of the efforts to streamline Growers Express' operations as the company focuses on frozen cut vegetables and other vegetable innovations such as rice and noodles, found in the freezer section of the grocery store.
Latest in Warehousing
Thriving in the Cold
Study reveals online grocery shopping still rare in U.S.
North America pallet market to reach a volume of 3.23 million units by 2024
Erik Meyer appointed vice president of finance for Standex Refrigerated Solutions Group
Integrating Building Design, Automation and Management to Improve Cold Storage Efficiency
Robb MacKie named vice-chair of NAM's Council of Manufacturing Associations
The American Bakers Association and the National Association of Manufacturers have announced the ABA president and CEO Robb MacKie has been named as the vice-chair of the NAM's Council of Manufacturing Associations.
Food Logistics Staff
Sysco's latest leadership changes will accelerate development
The board of directors has unanimously elected Kevin Hourican as the company's new president and chief executive officer, starting on February 1, 2020.
Domino's breaks ground for supply chain center
Domino's is building a supply chain center in Katy, Texas.
Kane Is Able hires veteran logistics industry executives
Kane Is Able Inc. has named veteran logistics industry executives to lead its operations team.
Turkey Hill appoints Jim Sterbenz as chief commercial officer
In this newly created role, Sterbenz will oversee all commercial operations at Turkey Hill, including sales, consumer marketing, and product development.
NRF names new chairman, board members
The National Retail Federation announced that Qurate Retail Inc. president and CEO Mike George has been elected chairman of the NRF Board of Directors.
Stater Bros. Markets promotes Keith Thomas to executive vice president retail operations
Keith Thomas has been promoted to the position of executive vice president of retail operations for Stater Bros. Markets.
H-E-B named top US grocer in the 2020 dunnhumby Retailer Preference Index
For the first time, H-E-B was rated the top U.S. grocery retailer bumping Trader Joe's from the top spot which the discounter has held the last two years.
Toshiba creating 40 jobs in Horn Lake with distribution center opening
The new location will allow the company to expand its distribution capabilities to meet increasing client demand.
Albertsons Companies Inc. Reports Third Quarter Results
Albertsons Companies, Inc. reported results for the third quarter of fiscal 2019.
Lidl US to Build a $100 Million Distribution Center in Atlanta
Grocery retailer Lidl will construct a $100 million regional distribution center in Newton county, Georgia.
Global Cold Chain Monitoring Market to Grow 10.8%
The cold chain monitoring market worldwide is projected to grow by $3.9 billion.
Long Island Will Receive 50 Lidl Stores
The company's first two locations in West Babylon and Center Moriches, New York opened on Dec. 11 and will open another in Huntington, New York this week.
Dematic and Dot Foods Team Up for Fully Automated Warehouse
The new 117,000 square-foot facility will be a key strategic asset for Dot Food's frozen food distribution, providing new efficiencies and a path for future growth.
AeroFarms to Build Indoor Vertical Farm in Virginia
AeroFarms is investing $42 million to build a 150,000-square-foot indoor vertical farm in Danville, Virginia.
Amazon's New Grocery Store May Open in February
The grocery store is reportedly still undergoing renovation and Amazon has yet to obtain a license to sell alcohol.
Food Logistics Operators Turn to Advanced DSD Solutions and Mobile Printers as a Game Changer for Supply Chain Visibility
Food logistics operators turn to advanced DSD solutions and mobile printers as a game changer for supply chain visibility.
Wegman Plans for $175 Million Warehouse in Virginia
The center will create 700 jobs.
Ahold Delhaize Plans to Expand Supply Chain
Ahold Delhaize is investing $480 million over the next three years to grow its U.S. supply chain operations to better serve its supermarket and e-commerce businesses.
Albertsons Companies and Takeoff Technologies Develop Partnership Focused on the Future of Grocery E-Commerce
The two companies have decided to form a strategic partnership with dedicated teams to collaborate on the evolution of microfulfillment capabilities to drive the future of e-commerce order fulfillment.
Plant-Based Meat Labeling Standards Released
The Plant Based Foods Association has released the first-of-its kind standard for labeling plant-based meat alternatives.
Hemp Sales Likely to Improve With Rise in Demand for Nutritional Hemp-Based Foods
Growing consumption of Hemp infused food items such as cooking oil, dairy alternative, flour, and salad dressings are anticipated to fuel the market growth.
Walmart Grocery Sales Increase
Walmart is on track to bring in $191 billion in grocery store sales this year, seeing a 3.6% increase in its latest quarter.

redpajama_set_name: RedPajamaCommonCrawl


text:
Moon, Trump agree to bring N. Korea to dialogue table thru sanctions, pressure
HOME North Korea
Kim Sua
President Moon Jae-in and U.S. President Donald Trump agreed to continue strong pressure and sanctions against North Korea to bring the regime back to negotiations as they held their second phone talks in two days after Pyongyang's latest long-range missile test, Cheong Wa Dae said.
"The two leaders agreed on the need to maintain their basic stance of putting strong sanctions and pressure on the North until North Korea voluntarily gives up developing nukes and missiles and comes out for dialogue," Cheong Wa Dae said.
The hour-long telephone conversation held late Thursday (Seoul time) came one day after the North launched an apparent intercontinental ballistic missile in its first provocation in two and a half months. The call marked the second of its kind in two days.
Pyongyang on Wednesday claimed success in its latest missile test, also declaring completion of building the "state nuclear force."
Moon said it was not clear whether the communist nation has in fact built nuclear weapons, let alone perfected its missile technology.
"The missile launched yesterday certainly was the most advanced one so far in all aspects, but the reentry technology has not yet been proven, and it is also uncertain whether the North has secured the technology to miniaturize nuclear warheads," he told the U.S. president, according to Cheong Wa Dae spokesman Park Soo-hyun.
"The task we face is to completely prevent North Korea from further advancing its nuclear and missile technologies, and eventually to have them dismantled," Moon added.
To this end, the two leaders said they will seek to intensify international sanctions and pressure against the North to the maximum level.
"President Trump praised our government's such efforts, and underscored the need to deter provocations and counter threats from North Korea with overwhelming power based on the strong joint defense posture of South Korea and the United States," Park said in a press release.
The U.S. leader also reaffirmed his support for enhancing South Korea's own defense capabilities.
"Also, President Trump expressed full support for South Korea's efforts to enhance its defense capabilities through acquisition or development of advanced military assets, and reaffirmed the United States' firm commitment to the defense of South Korea," the Cheong Wa Dae spokesman said.
The White House released a similar summary of the call, saying the leaders discussed their next steps in responding to the missile test, including "how to bring maximum pressure to bear on the regime."
"The presidents reiterated their strong commitment to enhancing the alliance's deterrence and defense capabilities," it said in a statement. "Both leaders reaffirmed their strong commitment to compelling North Korea to return to the path of denuclearization at any cost."
Trump also promised to send a high-level delegation to the Winter Olympics to be hosted by South Korea's PyeongChang in February.
저작권자 © The Korea Post 무단전재 및 재배포 금지
"Leaders of the two countries have a strong desire to enhance relations, cooperation and friendship to a higher level."
26,000 Soviet troops invaded Baku and Sumgait in Azerbaijan
Korea and U.S. seek critical minerals and energy cooperation
President Yoon tells global CEOs, 'Korea and my office are open'
POSCO Group introduces 19 venture companies at CES in Las Vegas
Cultural diplomacy as a bridge between nations: A new age of cultural connection
China strives to make digital economy stronger, better, larger
그랜드오페라단, '피가로의 이혼' 공연 개최


Lundy Law Commences An Investigation Into The Proposed Sale Of Norcraft Companies, Inc.
Lundy Law is investigating potential claims against the Board of Directors of Norcraft Companies, Inc. ("Norcraft" or the "Company") (NYSE: NCFT) for possible breaches of fiduciary duty and other violations of law in connection with the proposed sale of the Company to Fortune Brands Home & Security, Inc. ("Fortune Brands") in a transaction valued at approximately $600 million. Under the terms of the transaction, Fortune Brands will launch a tender offer for all outstanding Norcraft shares at a price of $25.50 per common share. Among other things, the investigation concerns whether the proposed transaction undervalues the Company and whether the Board of Directors of Norcraft is achieving the best possible value for Norcraft's shareholders.
If you own shares of Norcraft common stock and wish to discuss the legal ramifications of the investigation, or have any questions, contact Lundy Law who will, without obligation or cost to you, answer your questions. For more information you may contact David Promisloff, co-counsel to Lundy Law directly at 1-800-LundyLaw, or visit https://www.lundylaw.com/press-releases/NCFT.


text:
Busca Descontos é um site brasileiro que hospeda cupons de descontos de variadas lojas de compras online.
Criado em 2006 pelo empresário Pedro Eugênio – hoje CEO da marca – o Busca Descontos foi responsável pela exportação de datas comerciais como o Black Friday ação responsável pela movimentação de R$17 mi em apenas um dia, em 2011.

Segundo relatório do e-bit, o site é responsável por um terço das compras do varejo feitas pela internet.

História
O Busca Descontos nasceu em 2006, a partir de uma ideia atribuída a Pedro Eugênio, idealizador e hoje diretor executivo da empresa.

Funcionamento
Com o atrativo de ser um verdadeiro agregador de cupons de descontos, o Busca Descontos oferece uma série de anúncios do setor de informática, eletroeletrônicos, livros, móveis, brinquedos, celulares, entre outros. Com a visualização do anúncio, o usuário é direcionando à página da loja que está ofertando o produto em questão. A partir daí, a compra poderá ter continuidade normalmente, e o desconto, antes oferecido, será efetuado na etapa final do processo de compra.

Black Friday (Sexta Negra)
O Black Friday foi uma ação promovida pelo Busca Descontos a partir do ano de 2010. Trata-se de uma data comercial de grande repercussão nos EUA, onde as lojas do varejo aproveitam para liquidar o seu estoque, no dia seguinte ao feriado de Ação de Graças, tradicionalmente comemorado na 4ª quinta-feira do mês de novembro.

A ideia da versão nacional do Black Friday foi trazer a essência da data para o universo das compras online. O Busca Descontos contou com parceria de os 30 de maiores sites do e-commerce do país, dentre eles Walmart, Dell, Americanas, Submarino, Netshoes, Dafiti, Saraiva e Fnac.

No dia 26 de novembro de 2010, foi ao ar a primeira edição da Black Friday no Brasil. Pelo menos 60 mil consumidores efetuaram cadastro no site para o evento virtual que movimentou R$ 3 milhões em apenas um dia.

Outras ações comerciais
Resultando do sucesso do Black Friday, o Busca Descontos planejou outras ações comerciais, também baseadas em modelos do varejo internacional. Foi o caso do Boxing Day, uma ocasião semelhante ao Black Friday, mas que nesse caso, acontece no dia seguinte ao Natal.

Grupo Busca Descontos
O Busca Descontos acabou expandido os seus horizontes, o que resultou em demais projetos para o comércio eletrônico. Foi assim que surgiu o Loucas por Descontos, um site que hospeda ofertas de compras coletivas.

Sites de compra coletiva

redpajama_set_name: RedPajamaWikipedia


text:
The Oppo Neo 7 is the last phone in the Oppo Neo Series, before the series became known under different aliases, such as the Oppo A Series. The phone was available in two configurations: a 3G and a 4G model. Besides network connectivity differences, these models also had different chipsets. Oppo says the reflective back on the phone, which is made by a "special laminating process" is inspired by Chinese bronze mirrors. The phone is aimed at people who value the looks of a phone over the raw specs, since the price (₹9990) is higher than other phones with similar specs.

This phone was released later as Oppo A33 in November 2015 but with 146g of weight, Snapdragon 410 chipset, 2GB of RAM and a less 2400 mAh battery.

References

Neo 7
Mobile phones introduced in 2015
Android (operating system) devices
Discontinued smartphones


Lifelike reproduction of infant lower leg allows students to master infant intraosseous infusion techniques. Simulated tibia and anatomical landmarks at the tibial tuberosity and medial malleolus. Fluid may be infused for realistic flashback. Drain in heel connects to reservoir bag.


text:
Some presidential candidates are spending a fortune, but others are popular without a dime
Republican presidential candidate Donald Trump answers questions from reporters after speaking at the National Federation of Republican Assemblies on Saturday, Aug. 29, 2015, in Nashville, Tenn.
Image: Mark Humphrey/Associated Press
By Patrick Kulp 2015-09-16 23:58:50 UTC
A pair of political ads released this week take aim at a loud and conspicuous target: Donald Trump.
Paid for by the conservative group Club for Growth, the spots try to paint Trump as an out-of-touch opportunist with a liberal bias. One features a clip of his admission that he "probably identifies more as a democrat" in some cases — repeated twice for emphasis — and a photo of him with the Clintons.
"He's just playing us for chumps," the narrator says with scorn.
.@club4growth asked me for $1 million. I said no. Now falsely advertising that I will raise taxes. I'll lower big league for middle class.
— Donald J. Trump (@realDonaldTrump) September 15, 2015
You can expect to see plenty more ads like this as other conservative Super PACs — political groups allowed to spend unlimited amounts of campaign money — gear up to bludgeon the current GOP frontrunner. Trump's braggadocio and lack of policy substance make him something of an easy target.
Meanwhile, however, the real estate mogul has yet to spend a dime of his billions on any TV ads of his own, thanks mostly to national media that hang on his every word. He's not the only one. Many of the more unorthodox candidates have surged to unexpected leads in the polls while shelling out little money on airtime, including Bernie Sanders and Ben Carson.
With charisma, they've been able to get far in the polls, earning name recognition that money can't buy.
That won't last long.
See also: Carly Fiorina tells Donald Trump what a president's face looks like: a woman
"We're going to see a lot of ads this time around. As much as the TV industry can bear," the Borell report's head author, Kip Cassino, told Mashable.
Analysts predict that a tidal wave of ad spending is set to hit the 2016 presidential race in coming months. A report from Borrell Associates forecasts a grand total of $11.4 billion, and FCC filings show that candidates have already reserved at least $47 million in air time — nearly three times the amount at this time in the 2012 cycle, according to the Wall Street Journal.
At the same time, presumed favorites like Hillary Clinton and Jeb Bush — as well as low-profile GOP stragglers — have reportedly spent millions on TV spots across Iowa and New Hampshire with more than 100 days left until the first primary vote. Freewheeling Super PACs also spend orders of magnitude more in the names of the candidates.
Yet their leads in the polls, once considered almost a foregone conclusion, have simultaneously narrowed and even disappeared as outsiders leverage media-savvy and headline-crashing over TV ad blitzes.
Pretty soon, it will be time to cough up the cash for advertising.
'The Trump factor'
Many of the abnormalities around the current state of the election tend to trace back to one source — the combover-topped billionaire Donald Trump, according to Elizabeth Wilner, who leads Kantar Media's campaign media analysis group.
"What makes this all so unusual is the Trump factor," Wilner said. "TV ads can be effective but their effectiveness right now is being blunted by Mr. Trump's dominance in the debate and dominance in the media."
Trump's willingness to constantly dial up news shows, his series of spats with big-name opponents and his soundbite-friendly speeches have captivated the media and sucked the oxygen out of many other campaigns.
To a lesser extent, Carson, Sanders and Carly Fiorina have also proven themselves adept at making headlines.
Image: John Minchillo/Associated Press
Of course, candidates who live by media coverage can also die by media coverage. The limelight means added scrutiny from the press, and a misstep or scandal can send the public narrative reeling in the other direction.
While Trump has so far been unusually unscathed by the consequences of his unrelenting stream of bad press, Bowdoin College political science professor Michael Franz, whose research centers on campaign advertising, said there may come a time when the media finally tire of his antics.
"Maybe the media sticks with him all the way because he's good copy and he can ride that to the end," Franz said. "But there comes a point where the media's fascination with this sideshow might not be as beneficial to [Trump]."
In their book on the 2012 election, The Gamble, political scientists Lynn Vavreck and John Sides reduce the typical lifespans of such "shooting star" candidates to a simple three-step formula: "discovery, scrutiny and decline."
These media darlings crop up every election year, and they can last surprisingly long — longer than our collective short-attention span might recall. Most often, though, they sputter out from embarrassing scandals, money shortages or simply loss of interest.
"This is a fairly common dynamic in primary elections," Sides said in an email. "Of course, paid advertising, when it comes in earnest, may also help or hurt them. But it's not a key ingredient right now."
Good PAC, bad PAC
Another result of the Trump campaign is an amped-up level of vitriol relatively early in the race, says Wilner. Candidates generally wait until later in the election cycle to wade into the name-calling and character attacks. Trump's caustic style may force their hand much sooner.
Candidates typically split their campaign advertising between two sources, according to Cassino. They sponsor the positive, uplifting ones themselves, while super PACs, which are not beholden to spending regulations, craft the attack ads.
.@planteink cartoon: Hillary Clinton, Bernie Sanders and Donald Trump on #SuperPAC money http://t.co/of99QJjP1H pic.twitter.com/5KfQuhZn5w
— Tulsa World Opinion (@TWOpinion) August 12, 2015
"The TV ads for these folks get kind of schizophrenic," Cassino said. "The ads from the candidate him or herself are very positive uplifting ads for the most part...Their evil twins, the PACs, are going to tell us about how bad everyone else in the campaign is."
Dramatic turns in campaign ads can have the added bonus of also being covered by the media, allowing campaigns to stretch a dollar, according to J.J. Balaban, a partner at political ad agency The Campaign Group.
But with more than a year until the actual presidential election, many candidates are in no rush to lavish campaign dollars on ads quite yet.
"When you're running for president, it's more of a marathon at this point than a sprint," Balaban said.
Topics: Advertising, Business, Election 2016, Presidential election 2016


The defence headquarters on Tuesday said soldiers in the Whirl Stroke operation in Benue state were ambushed and an officer was injured in the process.
Zakari Sani, a captain, was said to have been badly wounded and was evacuated to the Benue State University Teaching Hospital.
"Captain Zakari Sani, a very courageous and hardworking officer, was ambushed alongside other soldiers in Benue State while on operation WHIRL STROKE. STROKE. The officer was badly wounded and was evacuated to Benue State University Teaching Hospital, Makurdi," the defence headquarters tweeted.
The injured officer has been moved to Cedarest Hospital in Abuja for further treatment.
"The team of doctors and other medical staff including expatriate are attending to the officer whose situation though serious is getting better by the day. He has undergone several medical procedures which have helped to stabilised him further," the statement read.
"The CDS has placed Medical Surveillance on the officer for eventual medical evacuation outside the country. It should be noted that foreign medical evacuation is a process that is done with the advice of the medical doctor that is administering the stabilization treatment.
The CDS has placed Medical Surveillance on the officer for eventual medical evacuation outside the country. It should be noted that foreign medical evacuation is a process that is done with the advice of the medical doctor that is administering the stabilization treatment.
The Whirl Pool operation was set up to tackle farmers-herder clashes in the state.


WASHINGTON – Senate Republicans attacked the Environmental Protection Agency's (EPA) plan to cut pollution for coal-fired power plants last week, challenging the validity of the research on climate change and the viability of a technology aimed at cleaning carbon emissions.
Four of the federal government's top climate change officials appeared before the Senate Environment and Public Works Committee to try to build momentum for the president's climate change strategy.
President Obama unveiled in June his climate action plan following the collapse of a cap-and-trade bill in the Senate. The plan includes a slew of new policies to curtail U.S. carbon emissions and promote renewable energy.
The president's climate plan directs the EPA to propose rules to cut carbon pollution from power plants.
At the hearing, EPA Administrator Gina McCarthy told lawmakers power plants are the single largest source of carbon pollution in the U.S.
If left unaddressed, climate change could "have devastating impacts on the United States and the planet," she said.
Democrats and Republicans on the committee exchanged divisive rhetoric on the issue.
Sen. Sheldon Whitehouse (D-R.I.) said the evidence of climate change is already being witnessed in more acidic oceans and rising seas.
Whitehouse urged the witnesses to keep up the good work and "armor" themselves against the attacks from those who deny climate change.
Committee Chair Sen. Barbara Boxer (D-Calif.) said Americans already think climate change is a serious problem, citing a USA Today poll that shows popular support for government action on climate and clean energy solutions, such as solar and wind power.
"And here's the thing about the American people. They all say this, not just Democrats, not just Republicans, not just independents. The only place that we have a partisan divide is right here in the Congress," Boxer said.
Whitehouse and Boxer announced last Tuesday the creation of a Senate task force that aims to attack climate change denial and enlist support from companies outside of the fossil fuel industry.
Republicans on the panel questioned McCarthy about the validity of current climate change research. Some also raised concern about the impact on businesses and the coal industry.
McCarthy defended the proposed rules to limit carbon emissions. She said her agency is under a Supreme Court ruling to regulate emissions as mandated by the Clean Air Act, which requires the agency to regulate carbon dioxide if it poses a threat to public health and welfare.


text:
Он представляет из себя смесь языка программирование Pythonи библиотеки Qt. Qt – одна из наиболее мощных библиотек. Официальный сайт PyQt www.riverbankcomputing.co.uk разработан Филом Томпсоном.
PyQt4 представляет из себя набор модулей Пайтон. Она содержит более 300 классов и почти 6000 функций и методов. Это мультиплатформенный тулкит. Он работает на всех основных операционных системах, включая Unix, Windows и MacOS. Начиная с версии PyQt4 GPL доступна для всех поддерживаемых платформ.

- Так как тулкит содержит большое количество классов, они распределены в несколько модулей.
1. Модуль QtCore содержит ядро не-gui функциональности. Этот модуль используется для работы со временем, файлами и папками, различными типами даных, потоками, адресами URL, mime типами, потоками процессов.
2. Модуль QtGui содержит графические компоненты и связанные классы. Сюда включены, например, кнопки, окна, строки состояния, панели инструментов, полосы прокрутки, изображения (bitmap), цвета, шрифты и др.
3. МодульQtNetwork содержит классы для сетевого программирования. Эти классы позволяют писать TCP/IP и UDP клиенты и серверы. Они делают сетевое программирование легче и более доступным.
4. Модуль QtXml содержит классы для работы с xml файлами. Он предоставляет реализации API SAX и DOM.
5. Модуль QtSvg предоставляет классы для отображения содержимого SVG файлов. Масштабируемая векторная графика (SVG) – это язык описания двумерной графики и графических приложений на языке XML.
6. МодульQtOpenGL используется для построения 3D и 2D графики с помощью библиотеки OpenGL. Модуль дает возможность бесшовной интеграции библиотек QtGui и OpenGL.
7. Модуль QtSql содержит классы для работы с базами данных.

Простой пример 1.py
----------------------
Он отображает небольшое окошко. Мы сможем изменить его размеры. Распахнуть на весь экран. Минимизировать.

```

#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

Он отображает небольшое окошко.
Мы сможем изменить его размеры.
Распахнуть на весь экран.
Минимизировать.

"""

import sys
from PyQt4 import QtGui

def main():

    app = QtGui.QApplication(sys.argv)

    w = QtGui.QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()

    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
Подключаем необходимые модули.
------------------------------
-  Основные GUI виджеты находятся в библиотеке QtGui.
```
import sys
from PyQt4 import QtGui

```
Каждое приложение PyQt4 должно создать объект Qapplication.
-----------------------------------------------------------
```
app = QtGui.QApplication(sys.argv)
```
- Этот объект находится в модуле QtGui. Параметр sys.argv это список аргументов командной строки. Скрипты на Пайтон могут быть запущены из консоли, и с помощью аргументов мы можем контролировать запуск приложения.

```
Qwidget
--------
widget = QtGui.QWidget()
```
- Qwidget это базовый класс для всех объектов интерфейса пользователя для PyQt4. Мы используем стандартный конструктор для Qwidget, который не имеет родителя. Виджет у которого нет родительского является окном.

Изменение и получение размеров окна
------------------------------------

изменяет текущий размер окна. Если содержимое окна не nомещается в установленный размер, то размер будет выбран так, чтобы комnоненты nоместились без искажения, nри условии, что исnользуются менеджеры геометрии. Следовательно, заданный размер может не соответствовать реальному размеру окна. Если исnользуется абсолютное nозиционирование, то комnоненты могут оказаться наnоловину или nолностью за nределами видимой части окна. В качестве nараметра можно также указать экземnляр класса QSize.
Метод resize()
--------------
- Метод resize() изменяет размеры виджета. В данном случае 250 пикселей по ширине и 150 по высоте.
```
widget.resize(250, 150)
```

- Здесь мы устанавлиаем заголовок окна на simple.
```
widget.setWindowTitle('simple')
```
Метод show()
------------
- Метод show() отображает окно на экране.
```
widget.show()
```
метод exit()
------------
```
sys.exit(app.exec())
```
В конце мы запускаем основной цикл приложения. Отсюда начинается обработка событий. Приложение получает события от оконной системы и распределяет их по виджетам. Когда цикл заканчивается, и если мы вызовем метод exit(), то наше окно (главный виджет) будет уничтожено. Метод sys.exit() гарантирует чистый выход. Окружение будет проинформировано о том, как приложение завершилось.

2. создать класс и конструктор для этого класса.
------------------------------------------------
setGeometry(X,У,Ширина,Высота)
-------------------------------
изменяет одновременно nоложение комnонента и его текущий размер. Первые два nараметра задают координаты левого верхнего угла (относительно родительского комnонента), а третий и четвертый nараметры - ширину и высоту. В качестве nараметра можно также указать экземnляр класса QRect.

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4
Первое GUI-приложение

"""

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QDialog):
    def __init__(self):
        QtGui.QDialog.__init__(self)

        self.setGeometry(600, 300, 500, 150)
        self.setWindowTitle(u"Первое GUI-приложение")

app = QtGui.QApplication(sys.argv)

ex = Example()

ex.show()

sys.exit(app.exec_())

```

Пайтон поддерживает как процедурный, так и объекто-ориентированные стили программирования. Программирование на PyQt4 предполагает ООП программирование.

2.1. создать класс и конструктор для этого класса.
--------------------------------------------------

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4
Первое GUI-приложение

"""

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QDialog):
    def __init__(self):
        QtGui.QDialog.__init__(self)

        self.setGeometry(600, 300, 500, 150)
        self.setWindowTitle(u"Первое GUI-приложение")

def main():

    app = QtGui.QApplication(sys.argv)

    ex = Example()

    ex.show()

    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```

3. Всплывающая подсказка
-------------------------
Мы можем создать всплывающую подсказку для любого виджета.
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        QtGui.QToolTip.setFont(QtGui.QFont('SansSerif', 10))

        self.setToolTip('This is a <b>QWidget</b> widget')

        btn = QtGui.QPushButton('Button', self)
        btn.setToolTip('This is a <b>QPushButton</b> widget')
        btn.resize(btn.sizeHint())
        btn.move(50, 50)

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Tooltips')
        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
- В этом примере, мы показываем подсказку для виджета Qwidget.
self.setToolTip('This is a QWidget widget')

- Для создания подсказки вызываем метод setToolTip(). Можно использовать html тэги для форматирования.
QtGui.QToolTip.setFont(QtGui.QFont('OldEnglish', 10))

4. Закрытие окна
-----------------
QPushButton(string text, QWidget parent = None)

- Это конструктор QPushButton, который мы будем использовать в нашем примере. Параметр text – это текст, который будет отображаться на кнопке, parent – тот виджет, на который мы поместим кнопку. В нашем случае это Qwidget.
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        qbtn = QtGui.QPushButton('Quit', self)
        qbtn.clicked.connect(QtCore.QCoreApplication.instance().quit)
        qbtn.resize(qbtn.sizeHint())
        qbtn.move(50, 50)

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Quit button')
        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
Мы создаём кнопку и распологаем её на виджете также, как мы размещали виджет на экране.
```
self.connect(quit, QtCore.SIGNAL('clicked()'),
QtGui.qApp, QtCore.SLOT('quit()'))
```
Система обработки событий в PyQt4 построена на механизме сигналов и слотов. Если мы щёлкнем на кнопке, то будет послан сигнал clicked(). Слот может быть как слотом PyQt4 так и любым возможным для языка Пайтон. Метод QtCore.QObject.connect() соединяет сигнал и слот. В нашем случае слот является предопределённым слотов PyQt4.

5.  Окно сообщений
-------------------
Обычно, при щелчке на кнопке закрытия в заголовке окна виджет закрывается. Иногда нам нужно изменить это действие. Например, если у нас открыт файл в редакторе с которым мы сделали какие-то изменения. В этом случае мы показываем пользователю сообщение для подтверждения выбранного действия.
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Message box')
        self.show()

    def closeEvent(self, event):

        reply = QtGui.QMessageBox.question(self, 'Message',
            "Are you sure to quit?", QtGui.QMessageBox.Yes |
            QtGui.QMessageBox.No, QtGui.QMessageBox.No)

        if reply == QtGui.QMessageBox.Yes:
            event.accept()
        else:
            event.ignore()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

```
Когда мы закрываем виджет, генерируется событие QCloseEvent. Для изменения поведения виджета нам нужно изменить обработчик события QCloseEvent.
```
reply = QtGui.QMessageBox.question(self, 'Message',

    "Are you sure to quit?", QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)
```
Мы выводим сообщение с двумя кнопками "Да" и "Нет". Первая строка ('Message') выводится в заголовке окна, вторая – текст сообщения. Возвращаемое значение хранится в переменной reply.
```
if reply == QtGui.QMessageBox.Yes:
    event.accept()
else:
    event.ignore()
```
Здесь мы проверяем возвращаемое значение: если щелкнули по кнопке "yes", то мы принимаем стандартный обработчик, иначе – игнорируем закрытие.

# Управление расположением виджетов
 Управление расположением это то, как мы размещаем виджеты на форме. Тут есть два пути: использование абсолютного позиционирования (absolute positioning) или же использование классов расположения (layout classes).

6. Абсолютное позиционирование
-------------------------------
Программист указывает положение и размер каждого виджета в пикселях. Когда вы используете абсолютное расположение вы должны понимать несколько вещей:
- размер и положение виджета не изменяется при изменении размеров окна
- приложение может выглядеть различно на разных платформах
- изменение шрифта в вашем приложении может испортить расположение
- если вы решаете изменить раскладку, вы должны полностью повторить её, что отнимает много времени

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        self.resize(250, 150)
        self.center()

        self.setWindowTitle('Center')
        self.show()

    def center(self):

        qr = self.frameGeometry()
        cp = QtGui.QDesktopWidget().availableGeometry().center()
        qr.moveCenter(cp)
        self.move(qr.topLeft())

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
Мы просто вызываем метод move() для изменения положения виджетов, в нашем случае это QLabel. Мы располагаем их согласно координатам X и Y. Начало системы координат находится в левом верхнем углу окна. Координата X растёт справа налево, а Y сверху вниз.

# Меню и панели инструментов

7. Строка состояния
--------------------
Строка состояния это виджет, который используется для отображения статусной информации.
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys
from PyQt4 import QtGui

class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        self.statusBar().showMessage('Ready')

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Statusbar')
        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
8. Font
--------

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys
from PyQt4 import QtGui

class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        fntMyFont = QtGui.QFont(self)
        fntMyFont.setBold(True)
        fntMyFont.setPixelSize(18)
        self.statusBar().setFont(fntMyFont)
        self.color = QtGui.QColor(255, 0, 0)
        self.statusBar().showMessage('Ready')

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Statusbar')

        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

```

9.  color
----------

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys
from PyQt4 import QtGui

class Example(QtGui.QMainWindow):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        fntMyFont = QtGui.QFont(self)
        fntMyFont.setBold(True)
        fntMyFont.setPixelSize(18)
        self.statusBar().setFont(fntMyFont)

        self.button = QtGui.QPushButton('Dialog', self)
        self.button.setStyleSheet("background-color: red")

        palette = QtGui.QPalette(self.button.palette()) # make a copy of the palette
        palette.setColor(QtGui.QPalette.ButtonText, QtGui.QColor('blue'))
        self.button.setPalette(palette) # assign new palette

        self.button.move(20, 20)

        self.label = QtGui.QLineEdit(self)
        self.label.move(130, 22)

        self.statusBar().showMessage('Ready')

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Statusbar')

        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

```

10. Box Layout
--------------
Управление расположением с помощью классов раскладки является более гибким и практичным. Это предпочтительный способ расположения виджетов. Простые классы раскладки это QHBoxLayout и QVBoxLayout. Они располагают виджеты горизонтально и вертикально.
Представим, что мы хотим разместить две кнопки в правом нижнем углу формы. Чтобы создать такую раскладку мы будем использовать один горизонтальный и один вертикальный box. Необходимое пространство мы получим добавив фактор растяжения (stretch factor).
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys, os
from PyQt4 import QtGui

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        okButton = QtGui.QPushButton("OK")
        cancelButton = QtGui.QPushButton("Cancel")

        hbox = QtGui.QHBoxLayout()
        hbox.addStretch(1)
        hbox.addWidget(okButton)
        hbox.addWidget(cancelButton)

        vbox = QtGui.QVBoxLayout()
        vbox.addStretch(1)
        vbox.addLayout(hbox)

        self.setLayout(vbox)

        self.setGeometry(300, 300, 300, 150)
        self.setWindowTitle('Buttons')
        self.show()

def main():

    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()
```
11.  QGridLayout
-----------------
Самый универсальный класс раскладок это расположение таблицей. Эта раскладка делит пространство на строки и столбцы. Для её создания используется класс QgridLayout.
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys, os
from PyQt4 import QtGui

class Example(QtGui.QWidget):

    def __init__(self):
        super(Example, self).__init__()

        self.initUI()

    def initUI(self):

        grid = QtGui.QGridLayout()
        self.setLayout(grid)

        names = ['Cls', 'Bck', '', 'Close',
                 '7', '8', '9', '/',
                '4', '5', '6', '*',
                 '1', '2', '3', '-',
                '0', '.', '=', '+']

        positions = [(i,j) for i in range(5) for j in range(4)]

        for position, name in zip(positions, names):

            if name == '':
                continue
            button = QtGui.QPushButton(name)
            grid.addWidget(button, *position)

        self.move(300, 150)
        self.setWindowTitle('Calculator')
        self.show()

def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

```
В нашем примере, мы создаём таблицу кнопок. Одну ячейку оставляем пустой, добавляя один виджет QLabel.
```
grid = QtGui.QGridLayout()
```
Здесь мы создаём раскладку таблицей.
```
if j == 2:
    grid.addWidget(QtGui.QLabel(''), 0, 2)
else:
    grid.addWidget(button, pos[j][0], pos[j][1])
```
Чтобы добавить виджет в таблицу мы должны вызвать метод addWidget(), передав в качестве аргументов виджет, а также номера строки и столбца.

12. Calculator
-----------------
Получить размеры позволяют следующие методы:
--------------------------------------------
width() и height()
------------------
- возвращают текущую ширину и высоту соответственно:
```
window.resize(50, 70)
print(window.width(), window.height())
```
size()
-------
- возвращает экземпляр класса QSize, содержащий текущие размеры

sizeHint()
-----------
- возвращает экземпляр класса QSize, содержащий рекомендуемый размер компонента. Если возвращаемые размеры являются отрицательными, то считается, что нет рекомендуемого размера;

```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys, os
from PyQt4 import QtGui, QtCore

class Button(QtGui.QToolButton):
    def __init__(self, text, parent=None):
        super(Button, self).__init__(parent)

        self.setSizePolicy(QtGui.QSizePolicy.Expanding,
                QtGui.QSizePolicy.Preferred)
        self.setText(text)

    def sizeHint(self):
        size = super(Button, self).sizeHint()
        size.setHeight(size.height() + 20)
        size.setWidth(max(size.width(), size.height()))
        return size

class Calculator(QtGui.QDialog):

    NumDigitButtons = 10

    def __init__(self, parent=None):
        super(Calculator, self).__init__(parent)

        self.pendingAdditiveOperator = ''
        self.pendingMultiplicativeOperator = ''

        self.sumInMemory = 0.0
        self.sumSoFar = 0.0
        self.factorSoFar = 0.0
        self.waitingForOperand = True

        self.display = QtGui.QLineEdit('0')
        self.display.setReadOnly(True)
        self.display.setAlignment(QtCore.Qt.AlignRight)
        self.display.setMaxLength(15)

        font = self.display.font()
        font.setPointSize(font.pointSize() + 8)
        self.display.setFont(font)

        self.digitButtons = []

        for i in range(Calculator.NumDigitButtons):
            self.digitButtons.append(self.createButton(str(i),
                    self.digitClicked))

        mainLayout = QtGui.QGridLayout()
        mainLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)

        for i in range(1, Calculator.NumDigitButtons):
            row = ((9 - i) / 3) + 2
            column = ((i - 1) % 3) + 1
            mainLayout.addWidget(self.digitButtons[i], row, column)

        mainLayout.addWidget(self.digitButtons[0], 5, 1)
        self.setLayout(mainLayout)

        self.setWindowTitle("Calculator")

    def createButton(self, text, member):
        button = Button(text)
        button.clicked.connect(member)
        return button

    def digitClicked(self):
        pass

def main():
    app = QtGui.QApplication(sys.argv)
    calc = Calculator()
    sys.exit(calc.exec_())

if __name__ == '__main__':
    main()

```

13. sizeHint setHeight setWidth
-------------------------------
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys, os
from PyQt4 import QtGui, QtCore

class Button(QtGui.QToolButton):
    def __init__(self, text, parent=None):
        super(Button, self).__init__(parent)

        self.setSizePolicy(QtGui.QSizePolicy.Expanding,
                QtGui.QSizePolicy.Preferred)
        self.setText(text)

    def sizeHint(self):
        size = super(Button, self).sizeHint()
        size.setHeight(size.height() + 20)
        size.setWidth(max(size.width(), size.height()))
        return size

```

13. Operations
--------------
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

"""
Code PyQt4

In this example, we create a simple
window in PyQt4.

"""
import sys, os
from PyQt4 import QtGui, QtCore

class Button(QtGui.QToolButton):
    def __init__(self, text, parent=None):
        super(Button, self).__init__(parent)

        self.setSizePolicy(QtGui.QSizePolicy.Expanding,
                QtGui.QSizePolicy.Preferred)
        self.setText(text)

    def sizeHint(self):
        size = super(Button, self).sizeHint()
        size.setHeight(size.height() + 20)
        size.setWidth(max(size.width(), size.height()))
        return size

class Calculator(QtGui.QDialog):

    NumDigitButtons = 10

    def __init__(self, parent=None):
        super(Calculator, self).__init__(parent)

        self.pendingAdditiveOperator = ''
        self.pendingMultiplicativeOperator = ''

        self.sumInMemory = 0.0
        self.sumSoFar = 0.0
        self.factorSoFar = 0.0
        self.waitingForOperand = True

        self.display = QtGui.QLineEdit('0')
        self.display.setReadOnly(True)
        self.display.setAlignment(QtCore.Qt.AlignRight)
        self.display.setMaxLength(15)

        font = self.display.font()
        font.setPointSize(font.pointSize() + 8)
        self.display.setFont(font)

        self.digitButtons = []

        for i in range(Calculator.NumDigitButtons):
            self.digitButtons.append(self.createButton(str(i),
                    self.digitClicked))

        self.divisionButton = self.createButton("\367",
                self.multiplicativeOperatorClicked)
        self.multiplicatButton = self.createButton("\327",
                self.multiplicativeOperatorClicked)
        self.minusButton = self.createButton("-", self.additiveOperatorClicked)
        self.plusButton = self.createButton("+", self.additiveOperatorClicked)

        mainLayout = QtGui.QGridLayout()
        mainLayout.setSizeConstraint(QtGui.QLayout.SetFixedSize)

        for i in range(1, Calculator.NumDigitButtons):
            row = ((9 - i) / 3) + 2
            column = ((i - 1) % 3) + 1
            mainLayout.addWidget(self.digitButtons[i], row, column)

        mainLayout.addWidget(self.divisionButton, 2, 4)
        mainLayout.addWidget(self.multiplicatButton, 3, 4)
        mainLayout.addWidget(self.minusButton, 4, 4)
        mainLayout.addWidget(self.plusButton, 5, 4)

        mainLayout.addWidget(self.digitButtons[0], 5, 1)
        self.setLayout(mainLayout)

        self.setWindowTitle("Calculator")

    def createButton(self, text, member):
        button = Button(text)
        button.clicked.connect(member)
        return button

    def digitClicked(self):
        pass

    def multiplicativeOperatorClicked(self):
        pass

    def additiveOperatorClicked(self):
        pass

def main():
    app = QtGui.QApplication(sys.argv)
    calc = Calculator()
    sys.exit(calc.exec_())

if __name__ == '__main__':
    main()

```
## 15 Сигналы и слоты в PyQt4
События(events).
----------------
С помощью сигналов и слотов, в библиотеке PyQt4 происходит взаимодействие между объектами. Объектами могут выступать например, виджеты.

После запуска главного цикла app.exec_(), приложение начнет обрабатывать события. Например, когда будет нажата кнопка(QPushButton), то произойдет событие(сигнал) clicked(). События бывают пользовательские(например, нажатие кнопки) и системные.
Чтобы обработать событие(сигнал) объекта(например, QPushButton), необходимо его соединить с нужным слотом. Слотом является пользовательская или библиотечная функция.

```
import sys
from PyQt4.QtCore import pyqtSlot
from PyQt4.QtGui import *

# ... insert the rest of the imports here
# Imports must precede all others ...

# Create a Qt app and a window
app = QApplication(sys.argv)

win = QWidget()
win.setWindowTitle('Test Window')

# Create a button in the window
btn = QPushButton('Test', win)

@pyqtSlot()
def on_click():
    ''' Tell when the button is clicked. '''
    print('clicked')

@pyqtSlot()
def on_press():
    ''' Tell when the button is pressed. '''
    print('pressed')

@pyqtSlot()
def on_release():
    ''' Tell when the button is released. '''
    print('released')

# connect the signals to the slots
btn.clicked.connect(on_click)
btn.pressed.connect(on_press)
btn.released.connect(on_release)

# Show the window and run the app
win.show()
app.exec_()
```

## Переопределение событий 15_1.
В PyQt4 можно переопределять события, например:
-----------------------------------------------
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui, QtCore

class Escape(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.setWindowTitle(self.trUtf8('Переопределение события'))
        self.resize(250, 150)
        self.connect(self, QtCore.SIGNAL('closeEmitApp()'), QtCore.SLOT('close()'))

    def keyPressEvent(self, event):
        if event.key() == QtCore.Qt.Key_Escape:
            self.close()

app = QtGui.QApplication(sys.argv)
sigslot = Escape()
sigslot.show()
sys.exit(app.exec_())

```
мы переопределили событие keyPressEvent(QKeyEvent). Теперь при нажатии на кнопку «Esc», закрывается окно приложения.

## Отправка сигналов(генерация событий).
Объекты унаследованные от QtCore.QObject, могут оправлять сигналы. Например, создадим приложение, в котором при клике мыши в области окна, будет отправлен наш собственный сигнал ourSignal(), и соединим его со слотом закрытия окна 15-2:
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui, QtCore

class Emit(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.setWindowTitle(self.trUtf8('Собственный сигнал'))
        self.resize(250, 150)
        self.connect(self, QtCore.SIGNAL('ourSignal()'), QtCore.SLOT('close()'))

    def mousePressEvent(self, event):
        self.emit(QtCore.SIGNAL('ourSignal()'))

app = QtGui.QApplication(sys.argv)
qb = Emit()
qb.show()
sys.exit(app.exec_())
```

- соединяем сигнал ourSignal() со слотом закрытия окна приложения.
- переопределяем событие mousePressEvent(QMouseEvent) и теперь при клике мышью в любой области окна, будет отправлен(сгенерирован) наш собственный сигнал ourSignal().

## Создание своих слотов 15_3.
Так как слот это обычная функция, создадим приложение со своим слотом:
```
#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys, random
from PyQt4 import QtGui, QtCore

class withSlot(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.setWindowTitle(self.trUtf8('Свой слот в PyQt'))
        self.resize(300, 50)
        self.button=QtGui.QPushButton('Get!', self)
        self.button.show()

        vbox = QtGui.QVBoxLayout()
        vbox.addWidget(self.button)
        self.setLayout(vbox)
        self.connect(self.button, QtCore.SIGNAL('clicked()'), self.getIt)

    def getIt(self):
        self.button.setText(str(random.randint(1, 10)))

app = QtGui.QApplication(sys.argv)
qb = withSlot()
qb.show()
sys.exit(app.exec_())

```
соединяем сигнал нажатия кнопки с нашим слотом getIt(), который рандомно меняет текст на кнопке.

17.PY
-----
```
self.display = QtGui.QLineEdit('0')
        self.display.setReadOnly(True)
        self.display.setAlignment(QtCore.Qt.AlignRight)
        self.display.setMaxLength(15)

        font = self.display.font()
        font.setPointSize(font.pointSize() + 8)
        self.display.setFont(font)

mainLayout.addWidget(self.display, 0, 0, 1, 6)

```
## digitClicked(self):
```
    def digitClicked(self):
        clickedButton = self.sender()
        digitValue = int(clickedButton.text())

        if self.display.text() == '0' and digitValue == 0.0:
            return

        if self.waitingForOperand:
            self.display.clear()
            self.waitingForOperand = False

        self.display.setText(self.display.text() + str(digitValue))
```

redpajama_set_name: RedPajamaGithub


Open to all businesses, this free event offers a unique informal environment for exporters, international service providers and those interested in accessing new markets overseas to network and share their knowledge and expertise.
Our guest speakers this month are Alex Phillips from LNP China, who assists the world's most dynamic companies in building successful businesses in China, and Boyi Mu from the China-British Business Council who help British and Chinese businesses and organisations work together in China, the UK and third markets around the world.
Together, Alex and Boyi will explain how entry to the Chinese market has changed, offer advice on what you should consider before entering the market, identify the opportunities, country strategies and priorities and provide an update on marketing trends.
Karen Cash, Export Administrator at Cambridgeshire Chambers of Commerce, commented: "China is a popular country for exports from the UK and we encourage companies to attend this free event to find out how to enter or expand in this vibrant market.
Chamber staff will be on hand to offer advice on completing your export documentation, plus they will be handing out country guides that offer advice on doing business in India, Kenya, Malaysia, Mexico and Nigeria.
This event is organised by the Chambers' International Sector and sponsored by Prestige Business Travel.


text:
As auto tariffs loom, is now the time to buy a new car?
By Rachel Layne
July 27, 2018 / 5:00 AM / MoneyWatch
Impact of imported car tariffs
Tariffs on car imports could raise prices by nearly $7,000 02:10
The Trump administration is considering slapping auto tariffs on imported vehicles and parts. That means consumers in the market for a new car might want to buy those wheels sooner than later, experts say.
Depending on the model, prices for some popular vehicles could jump as much as $7,000 if tariffs under consideration are enacted, estimates show. Meanwhile, although it may be months before Mr. Trump decides on if, when and how to impose auto tariffs, prices are still likely to climb soon because of other factors. That's because interest rates for auto loans are rising along with broader U.S. borrowing rates, and a recent dip in sales could force automakers facing higher costs to push up list prices to preserve profit margins.
In the short term, the immediate threat seems to have abated after President Trump and European Commission President Jean-Claude Juncker on Wednesday said they were working to eliminate all tariffs between the trading partners. But success in hammering out a formal agreement is far from assured. And U.S. tariffs on steel and aluminum imports implemented earlier this year are already raising costs for automakers, including GM and Ford, while the Commerce Department continues to examine putting a 25 percent tariff on auto and parts imports.
Here are some things to consider if you're wondering whether now is a good time to purchase a car.
Above all, make sure you're ready to buy
If "you're psychologically there, you want the new car, you have the money and all those things line up, that's, in my opinion, more important than trying to chase this ghost of 'when is the perfect time to buy,'" said Eric Lyman, a chief analyst for TrueCar.
Traditionally, the weeks leading up to Labor Day and the end of December have been the best time to go car shopping. That's when auto dealers need to move new models off the floor, Lyman said.
Best car deals for Summer 2018 01:45
Delaying your purchase means possibly paying more
Mr. Trump has proposed 25 percent tariffs on all imported vehicles and their parts. Even with yesterday's agreement in principle with the EU, experts still think the U.S. is likely to proceed with some kind of auto tariff sometime down the line.
"It does create a risk. It puts nearly half of vehicles sold in the U.S. at a pretty substantial price premium, assuming all, or at least part, of that gets passed onto consumers," said Jeff Schuster, president of the Americas and global vehicle forecasts for LMC Automotive.
"In light of that, if a consumer is in or near a decision to purchase a new vehicle, it might not be a bad time to do so ahead of the possibility of the price increase," Schuster said. "Because not only would imported vehicle prices rise, we'd expect all prices to rise."
Tariffs would hit auto buyers in the pocketbook -- hard
In the U.S., tariffs could raise the price of an entry-level compact car between $1,409 and $2,057, according to a July study from the Peterson Institute for International Economics. The price of a new compact SUV/crossover, the most popular vehicle in America, could jump upwards of $3,000, while more upscale models in this class could see hikes of double that amount because they have more foreign parts and would face higher tariff-related costs.
"Since all cars contain foreign content, even ones made in the United States, and consumers can choose among similar models across brands, average prices are expected to go up whether the car is imported or made in the United States," analysts led by Mary E. Lovely, wrote in the PIIE study.
Vehicle prices are likely to rise regardless of tariffs
The Federal Reserve is hiking interest rates in a bid to temper inflation -- that means more expensive auto loans and less attractive lease rates. Monthly auto payments reached a record high in the first three months of the year, according to Bloomberg.
The average new vehicle loan amount hit a record $31,455 in the first quarter, according to a report by Experian. The monthly payment for a new vehicle climbed to $523, also a record. Meanwhile, the average interest rate for a new vehicle was 5.17 percent, during the quarter, up from 4.86 percent a year ago.
A good time to buy used
A record number of vehicles were leased in 2015. That means a record number are coming off lease and into dealer showrooms. Since those vehicles are traditionally sold to used car dealers, car buyers might find deals.
Many used models have the same features found in new vehicles and sell for thousands less, offering consumers a relative bargains, LMC's Schuster notes.
But tariffs would hit new cars
The auto industry is so globally integrated that it may be impossible for a single brand to escape if Mr. Trump imposes auto tariffs.
The average car assembled in the U.S. has just 50 percent of its parts made on American soil, and that's regardless of whether the consumer considers it a U.S. brand, according to a recent analysis by investment bank UBS.
For example, Fiat Chrysler vehicles have 58 percent U.S.-made parts, while BMWs have just 24 percent. Traditional U.S.-based brands GM and Ford have 49 percent and 55 percent U.S.-made parts, respectively, the UBS analysis found.
Automakers are already feeling the pinch
Ford and GM this week both lowered their profit forecasts for the year, in part because of higher costs stemming from the steel and aluminum tariffs Mr. Trump put in place earlier this year.
"Our biggest exposure, our biggest unmitigated exposure is really steel and aluminum when you look at all of the commodities," GM Chief Financial Officer Chuck Stevens said this week. "And frankly, the biggest driver of that is steel."
Don't try to figure out how much of your U.S.-brand car is made abroad
A huge number of autos are assembled on U.S. soil, but with many foreign parts in them. That makes it hard even for a professional, let alone a consumer, to figure out what kind of tariffs a given vehicle could face. Manufacturers and dealers may choose to spread higher costs out across models, rather than a direct raise per part, TrueCar's Lyman said.
You likely still have some time
Even as Mr. Trump threatens auto tariffs with frequency, the U.S. government must go through specific steps before imposing tariffs. They're in the middle of that process now, and technically it could take months before an actual tariff is implemented.
-- The Associated Press contributed to this report
10 luxurious lake houses for less than $300,000
7 incredible multimillion-dollar motorhomes
10 homes you can buy for $5,000 -- that's right: $5,000


Diane is involved with several groups that are seeking bi-partisan child welfare reforms that will make it possible for families to raise their children without fear of child protection agencies imposing their own (bad) parenting judgments, blacklisting innocent parents, and preventing children from growing up in the safety and stability of their own homes.
Also check Diane's Blog page and the Announcement bar for recent updates and upcoming events.
Support one of the member groups in United Family Advocates or the Family Justice Resource Center through a donation.
Michele Weidner (left) and Mary Broderick (middle) are both personally affected parent dynamos who had helped countless families who are wrongly accused. They are the most effective advocates for a better fairer system. Melissa Staas (right), has done heroic legal work to exonerate innocent families in medically-involved cases. Proceeds from Diane's forthcoming book will support the work of these three advocates.
It takes advocates of all types.
Mimi Laver has done more than anyone to build a national network of advocates for a better, fairer child welfare system for families. As the Director of the National Alliance for Parent Representation at the American Bar Association's Children and Law Project, she has been a tireless advocate for the right to counsel for parents and children and for integrating effective social work and social service supports into family defense. Here she is pictured at the Family Defense Center's 10 year anniversary, (2015) where she was one of 10 specially recognized contributors to the Family Defense Center. (Diane received the Family Defender Award at the same gala and is pictured here with her parents).
Two stellar advocates for justice who have been Diane's friends, advisors and colleagues for decades, Rita McLennon and Rene Heybach. Rita led the Shriver Center and the National Clearinghouse for Legal Services for many years and Rene was the first Director fo the Law Project for the Chicago Coalition for the Homeless, whose work with Diane in the Norman case inspired Ruth White in forming the National Center on Housing and Child Welfare.
Advocacy includes telling our stories and sharing our victories. Diane was interviewed on Adelante, Channel WGN Chicago, September 17 2015), about the report she wrote "When Can Parents Let Children Be Alone." Telling the story of families who have been victims of child protection overreaching helped to bring about changes in policies affecting thousands of famlies.


July 2 6th marks 6 months since the passing of our beautiful son Sean. To honor his memory, we are releasing balloons on Sunday July 26th at sunset from John Glenn High School's Soccer Field. Family and friends interested in joining us, please come to the High School by 7:00. We are asking that you bring a white or blue balloon – JGHS colors to commemorate his graduation. Feel free to decorate the balloons any way you see fit. We will release the balloons at 14 minutes past 7 that evening. Hope to see you there.
What a beautiful moving tribute to a wonderful son and brother. Sean's parents should be so proud in raising their son who in such a short time changed so many lives. Number 14 will never be just a number.


text:
Rapture è un romanzo statunitense scritto da Lauren Kate; è il quarto capitolo della saga di genere fantastico creata dall'autrice americana. Uscito in Italia il 20 giugno 2012, è stato pubblicato da Rizzoli.
In Rapture Luce e i suoi amici dovranno fermare Lucifero, che cercherà di ricreare la caduta degli angeli cancellando quindi secoli di esistenza della Terra che dovrà ricominciare il suo cammino tutto daccapo. Inoltre, Luce ricorderà molte cose del suo passato, che le faranno capire chi è veramente e come si è innamorata di Daniel.

Trama
In soli nove giorni, Luce, Daniel, Cam, Gabbe, Molly, Arianne, Roland e Annabelle devono fermare Lucifero, che vuole assolutamente ricreare la Caduta e quindi costringere la Terra a rivivere tutti i 7.000 anni di storia trascorsi.
Per farlo, il gruppo dovrà cercare tre reliquie che sono state testimonianze della caduta degli angeli e portarle al Monte Sinai, che rivelerà loro il luogo della caduta e quindi dove potranno fermare Lucifero.
Luce e Daniel vanno a Venezia; Cam, Molly e Gabbe ad Avignone, mentre Roland, Arianne e Annabelle vanno a Vienna.
Luce e Daniel trovano la prima reliquia e si alleano con gli Esclusi. Insieme a questi ultimi vanno a Vienna, dove trovano i loro amici prigionieri della Bilancia (angeli schierati con il Paradiso ma che vogliono fermare Luce e Daniel nella loro missione).
Grazie anche agli Esclusi, il gruppo riesce a liberarsi e ad incontrare Dee, una donna che dice di essere la seconda reliquia e che quindi deve aiutarli a portare a termine la missione.
Tutti insieme vanno ad Avignone, dove scoprono che Cam, Molly e Gabbe sono tenuti in ostaggio sul Golgota, appena fuori Gerusalemme dagli Anziani di Zhsmaelim, una setta capitanata da Miss Sophia (colei che nel primo libro della saga aveva ucciso l'amica di Luce, Penn).
Luce riesce a salvare Cam, che sta per essere trafitto da una stella saetta di Miss Sophia, ma Molly e Gabbe vengono uccise.
Una volta ritrovatisi, il gruppo si reca al monte Sinai, dove si scopre che Dee deve morire e deve essere proprio Lucinda a ucciderla. Luce, dopo un primo tentennamento, riesce nell'intento.
Il giorno dopo, Luce scopre il suo passato: in realtà lei era un angelo, il terzo in ordine di importanza nel Paradiso e si era innamorata niente meno che di Lucifero. Lui però voleva che anche lei si ribellasse a Dio insieme a lui ma lei, alla brutalità e alla rabbia di Lucifero, scelse la dolcezza di Daniel. Luce venne quindi condannata a reincarnarsi come umana ogni 17 anni e a non ricordarsi niente delle sue vite successive.
Riacquisite le ali, Luce è ora pronta a fermare Lucifero. Dopo aver raggiunto quest'ultimo, che è ancora innamorato di lei e crede che questa volta potrebbe essere sua, i due cominciano a discutere sul loro passato. Il loro discorso viene però fermato dal Trono. Dio chiede a Daniel e Lucinda cosa vogliono scegliere questa volta, se Paradiso o Inferno, ma entrambi ripetono la loro scelta iniziale: l'amore.
Il Trono quindi decide che ne hanno passate già abbastanza e che possono vivere il loro amore, ma saranno entrambi mortali: non si ricorderanno niente delle loro vite vissute come angeli e quindi non è detto che si reincontreranno per forza. I due però accettano e Luce chiede a Dio se può riprendere gli Esclusi con sé. Egli accetta, ridando loro la vista e lo splendore. Subito dopo, Luce e Daniel dicono a tutti addio e si preparano ad accogliere le loro vite mortali.

Diciassette anni dopo, Luce è una ragazza normale che va al college e, durante una festa, incontra Daniel. I due hanno subito un'affinità speciale e, anche se non si ricordano il loro passato, si sentono come se si fossero già conosciuti.

Non lontano da lì, nascosti a Lucinda e Daniel, Shelby e Miles (che sono invecchiati, sposati e che stanno per avere il secondo figlio) assieme ad Arianne, Annabelle e Roland, osservano i due ex angeli che si innamorano, per la prima, ed ultima volta.
Lucifero stesso, volendo testare di persona se Lucinda non è più innamorata di lui: le si mostra qualche minuto nella lavanderia del college parlandole un attimo, ma lei se ne va confusa e quindi a Lucifero non rimane altro che lasciarla andare ad innamorarsi di Daniel.
Lucifero, rispetto al proprio comportamento iniziale, nelle ultime righe sembra mostrare un che di buono. Che possa essere finalmente cambiato dopo 7000 anni?

Voci correlate
Lauren Kate

Altri progetti

Collegamenti esterni

Romanzi di Lauren Kate
Romanzi di autori statunitensi
Romanzi fantastici


until around 5.30pm at Recreation Ground, The Clappers, Robertsbridge in Eastern Sussex Mixed Friendlies, 2019 season. At 5.04pm match https://www.stoolball.org.uk/id/tournament/robertsbridgetournament-19may2019 is CONFIRMED.
until around 5pm at Staplecross Playing Field, Robertsbridge in Eastern Sussex Mixed Friendlies, 2019 season. At 5.04pm match https://www.stoolball.org.uk/id/tournament/staplecrosstournament-30jun2019 is CONFIRMED.
until around 5.30pm in Eastern Sussex Mixed Friendlies, 2019 season. At 5.04pm match https://www.stoolball.org.uk/id/tournament/civilservicetournament-14jul2019 is CONFIRMED.
until around 5.30pm at Icklesham Recreation Ground, Winchelsea in Eastern Sussex Mixed Friendlies, 2019 season. At 5.04pm match https://www.stoolball.org.uk/id/tournament/ickleshamtournament-4aug2019 is CONFIRMED.


text:
Home Home modules Memorabilia Spotlight Michael Jackson Rarest & Promo Vinyl 12" Singles
Michael Jackson Rarest & Promo Vinyl 12" Singles
Last updated: November 7th, 2012
Rare Michael Jackson Commercial 12 Inch Singles
Michael Jackson "Smile" 5 Track Commercial 12" Single (Holland) This mega-rare withdrawn Dutch 12" single is without a doubt the most sought after 12" single among Michael Jackson collectors. Housed in the fantastic "Charlie Chaplin" picture sleeve, this five track commercial release (#6651306) also features remixes of "Is It Scary" and "Off The Wall". Although there were a handful of CD releases of "Smile", this appears to be the only official vinyl release. Some copies of these records reached Dutch retail stores but after a couple of days were withdrawn and destroyed by Sony, making legit originals very rare, and currently valued at around $1800. But BEWARE as this is easily the most bootlegged Michael Jackson record in the world, with multiple fake copies circulating on Ebay at any given time.
Michael Jackson "Leave Me Alone" 3 Track Commercial 12" Single (Costa Rica) This 1989 Costa Rican commercial release features a unique picture cover similar to the "Man In The Mirror" sleeve with both English and Spanish versions of "I Just Can't Stop Loving You" on the B-side. Catalog #8654786. This record in excellent condition is worth about $600.
Michael Jackson "Will You Be There" 4 Track Promo 12" Single (Spain) This Spanish promo-only 12" record was withdrawn shortly after its 1993 release and exists in very small numbers. Catalog number is EPC 659222 6 with a gold promo stamp on the back cover. In excellent condition, the value of this record is $500.
Michael Jackson "The Way You Make Me Feel" Promo Pepsi 4 Track 12" Single (Germany) This ultra rare promotional German release includes "BAD LP" artwork cover and special gatefold jacket with Michael Jackson from the 1986 Pepsi commercial inside. Catalog number is EPC 6512756. This record in excellent condition is worth over $400.
Michael Jackson "Give In To Me" 4 Track Commercial 12" Single (UK) Very few copies of this UK commercial single (#658946 6) were released, making this 12" record worth around $250 in excellent condition.
Michael Jackson "Rock With You" Commercial 12" Single (Holland) This Dutch commercial release from 1979 features a rare "Off The Wall LP cover" photo on the front, with catalog# EPC-12.8206. In excellent condition, this record is worth about $250.
Michael Jackson "Give In To Me" Commercial 12" Single (Spain) Rare 1993 Spanish commercial 12" single (#EPC 658946-6) with picture cover and "Maxi Single 45 RPM" printed on the front (different to the UK/Holland version). The B side track of "Beat It" is misspelled "Heat It". In excellent condition, this record is worth about $250.
Michael Jackson "Don't Stop 'Til You Get Enough" Commercial 12" Single (Australia) This commercial 12" single is actually a re-issue which was released in 1984 with this rare "Thriller era" cover. Catalog # is ES 12097. This record is worth around $200 if the jacket is in excellent condition.
Michael Jackson Thriller Commercial 12" Single (Australia) This Australian commercial release with catalog #ES 12088 issued in 1983 features a unique "Beat It jacket with purple pants" cover and is worth about $150 in excellent condition.
Visit the Commercial 12" Singles section of our Memorabilia Showcase for a complete list of all Michael Jackson commercial 12" Singles.
Rare Michael Jackson Promotional 12 Inch Singles
Michael Jackson "Salven Al Mundo" (Heal The World) Mexican Promo 12" Single This ultra rare Michael Jackson Mexican promotional 12" single was released in 1992 with catalog# PRLP-95820. It plays the same 6:25 version of "Heal The World" on both sides. But the most unique aspect of the record is the picture sleeve, which features a photo of Michael Jackson being hugged by the angel from the end of the "Will You Be There" performance from the MTV 10th Anniversary Performance in November, 1991. The lyrics (in Spanish) are on the back. In excellent condition, this record is worth about $500. This record was also originally issued as part of a rare Dangerous Album press kit issued by Sony Music in Mexico.
Michael Jackson "Billie Jean" Japanese Promotional 2 Track 12" Single This very rare promo 12" single shows the upcoming date of release on the front: "25 February 1983" with a unique "Thriller LP cover" photo on the front. Catalog # is QY.3P-90054. This record in excellent condition is worth $500.
Michael Jackson "Thriller" Japanese Promo 2 Track 12" Single Ultra rare Japanese 12" promo single released in 1983 to promote the Thriller short film (with unique picture cover and matching "Thriller video" text with release date on the front cover). The B side is the Adam Ant track "Puss' N Boots". Catalog # is QY.3P.90067. This record in excellent condition is worth $500.
Michael Jackson "Can't Let Her Get Away" Promo 1 Track 12" Single (Costa Rica) This rare Costa Rican one sided promotional 12" single was released to select radio stations on 8/14/93. This is very likely the only vinyl release of this song as a single (#81014193), making this record worth about $400 in excellent condition.
Michael Jackson "Will You Be There" 1 Track Promo 12" Single (Costa Rica) Very rare 1993 1 track promo 12" record from Costa Rica. It comes with plain sleeve (#81022993). This record in excellent condition is valued at around $350.
Michael Jackson "Best 4 You" Japanese Promo 4 Track EP 12" Single This rare Japanese 12" promotional single released in 1985 with catalog# 12.3P-687 features a stellar "Victory Tour" picture cover and is worth about $300.
Michael Jackson "Is It Scary" Promo 4 Track 12" Single (Holland) This Dutch promotional single features the black Smooth Criminal silhouette with a purple cover. The catalog number is SAMPMS 4647. This record in excellent condition is worth $250.
Michael Jackson "P.Y.T. (Pretty Young Thing)" Promo 12" Single (Japan) This extremely rare Japanese promo 12" single (#QY-3P-90066) has a title sleeve picture cover with the 11/21 release date. This record plays at 45 RPM and the "A" side is actually the Men At Work song "Dr. Heckyll & Mr. Jive". In excellent condition, this record is worth at least $250.
Michael Jackson "Titres Enchainés" Promo 6 Track 12" Single (France) This six track French limited edition promo 12" single (#SDC-11022) comes in a custom picture cover and is very hard to find. In excellent condition, this record is worth about $250.
Michael Jackson "The Sound" Promo 7 Mix 12" Single (France) This French 12" promotional record features an exclusive 7 mix compilation on both sides with songs from the Off The Wall, Thriller, and BAD albums. With catalog number SAMP1211, a highlight of this record is its unique 1987 BAD Tour picture cover. In excellent condition, the record is worth about $250.
Michael Jackson "Off The Wall" Promo 12" Single (Japan) Rare 1979 Japanese promotional 12" single (#QY.3P-90013) with generic Epic Sony "Disco" cover. The "A" side is the song "Magic" by Dick St. Nicklaus. In excellent condition, this record is worth at least $250.
Michael Jackson "Don't Stop 'Til You Get Enough" Promo 12" Single (Belgium) This 1984 Belgian promotional record (#EPCA 12.4433) comes with a custom pink title sleeve picture cover. In excellent condition, this record is worth about $250.
Michael Jackson "Black Or White" Promo 4 Track 12" Single W/Envelope (UK) This very rare UK 12" single is housed in a special Promotional Envelope Pack (#657598-6) with original promo sticker on the reverse of the sleeve "Property of Sony Music - Demonstration Only Not For Resale". In excellent condition, this record is worth about $200.
Michael Jackson "Billie Jean/Beat It" Promo 1 Track 12" Single (France) This French 12" promo (#SDC-11009) contains an exclusive 9:06 linked track (titres enchaines) remix of "Billie Jean - Beat It Mix" on both sides. Housed in a two-tone pink and purple custom title sleeve. In excellent condition, this record is worth about $200.
The Jacksons "Body" Promo 12" Single (Japan) Rare Japanese promo 12" single (#QY.3P-90076) with unique blue tinted "Victory Tour" live picture cover with the 12/8/84 release date. The "A" side is the song "I Do Wanna Know" from REO Speedwagon. In excellent condition, this record is worth about $200.
Michael Jackson "HIStory" Promo 3 Track 12" Single (UK) This rare UK promotional record features a black Smooth Criminal silhouette of Michael Jackson with blue cover. The catalog number is SAMPMS 4342. This record in excellent condition is around $180.
Michael Jackson Leave Me Alone Promo 3 Track 12" Single (Brazil) This Brazilian promo of Leave Me Alone comes in a unique "Moonwalker" cover of Michael from the beginning of the Smooth Criminal video. Catalog number is 64.003/6-653501. In excellent condition, this record is worth about $150.
Michael Jackson "Slow Tracks" Sony Music Promo 12" Single (Thailand) This rare 1992 Thai release was issued to promote the Dangerous World Tour In Thailand. Catalog #SAMP-14 comes in a generic "Sony Music" jacket but record label has custom "Dangerous album" artwork. Worth about $150 in excellent condition.
Michael Jackson "Black Or White" Promo 12" Single (Brazil) 1991 Brazilian promotional 12" record released to select radio stations. Comes in a unique Black/White double sided title sleeve, with catalog number 52.218. In excellent condition, this record is worth about $100.
Michael Jackson "Bad Up/Down" Promo 2 Track 12" Single (Brazil) Rare white label Brazilian 12 inch promo sent to radio stations in 1987 in conjunction with the BAD album. Same track on both sides, and is housed in unique "Up Down" picture cover with catalog# 52105. This record in excellent condition is worth about $100.
Visit the Promotional 12" Singles section of our Memorabilia Showcase for a complete list of all Michael Jackson promotional 12" Singles.
Rare Michael Jackson 12 Inch Colored Vinyl Records
Michael Jackson "Billie Jean" Limited Edition 12" Single White Vinyl (Ecuador) This ultra-rare Ecuadorian 2 track white vinyl 12" single vinyl with catalog#: 833-0025 is worth $600 in excellent condition.
Michael Jackson "Thriller" Limited Edition Red Vinyl 12" Single (South Africa) This South African 1982 red vinyl edition of Thriller comes in a picture cover with catalog # XEN-5630. In excellent condition, this record is worth $500.
Michael Jackson "Thriller" Limited Edition Pink Vinyl 12" Single (South Africa) This South African 1982 limited edition record is pressed on pink vinyl, with the same XEN-5630 catalog number as the red vinyl edition (but no picture cover). In excellent condition, this record is worth $500.
Michael Jackson "Don't Stop 'Til You Get Enough" *Obsequio De Discotecas Melody* Promo Red 12" Vinyl (Mexico) Extremely Rare 1979 Mexican red vinyl 12" single given as a promo gift by Melody Disco-Clubs. Housed in a special cover with Michael as a child with his dog (#SCL-45.013). This record (with picture cover) is worth $450.
Michael Jackson "Billy Jean/Largate" Limited Edition 12" Single Green Vinyl (Mexico) Ultra rare Mexican 2 track green vinyl 12" single with extended "Billy Jean" (misspelled as in Spanish), b/w "Largate" (Beat It). The red vinyl version, worth about $100 is much more common, whereas only a very few copies were pressed in green (#SCL 45040), making this record worth $350.
Michael Jackson "Black Or White" Limited Edition 12" Single Dual Color Vinyl (Australia) Very rare Australian double colored 12" single (#SAMP 340) with half vinyl in black and the other half in white. In excellent condition, this record is worth $300.
Dime Dime Dime (Say Say Say) Limited Red 12" Single Vinyl (Mexico) This Mexican red vinyl 12" single was issued in 1983 on the Discos EMI Capitol (#POP 604), with picture cover. This record in excellent condition is worth around $300.
Rare Michael Jackson 12 Inch Limited Editions & Box Sets
Michael Jackson Twelves Promo Limited Edition 12" Single Box Set (UK) This promotional box set features seven 12" records, each in unique picture sleeve which, when placed together, make a large picture of Michael. Issued in 2003 as part of the "Number Ones" album campaign, with catalog number XPR3744. The box set in excellent condition is worth around $350.
Michael Jackson "Thriller" Limited Edition 12" Single 3 Track With Bonus 1984 Calendar (UK) This ultra-rare 1984 UK limited edition 12" is housed in a unique picture sleeve with bonus 1984 full color calendar poster. In excellent condition, this record is worth about $200.
Michael Jackson "The Way You Make Me Feel" Limited Edition 12" Single Double Groove (UK) This UK special edition (#651275 3) is a four track "Double Groove" release where you can "Put either side on your turntable, lower the arm and see which mix your needle pix." In excellent condition, this record is worth about $200.
Michael Jackson "Dirty Diana" Limited Edition 3 Track Posterbag 12" Single (UK) This limited edition record (#652864 6) from the UK opens up into a large poster of Michael from the rehearsal for the 1987 Bad Tour in Japan. In excellent condition, this record is worth about $200.
Michael Jackson "Smooth Criminal" Limited Edition 12" Single With Special Moonwalker Advent Calendar (UK) This stellar limited edition opens up into a Moonwalker "Advent Calendar", reading "A door for you to open every day until December 25th - Then see the film on December 26th at a cinema near you!" In excellent condition, this record is worth at least $150.
Visit the 12" Limited Edition Singles section of our Memorabilia Showcase for a complete list of all Michael Jackson picture discs, colored vinyl, and all other limited editions. Also be sure to read our extensive articles on the Rarest Michael Jackson LP Albums and Rarest 7" Singles!
For suggested additions or corrections, please email us.
BAD25 Anniversary Official Bravado Graffiti Bar Case Black Apple iPhone 5/5S (Japan)


Dopamine–sometimes called the brain's feel-good neurotransmitter–helps regulate emotion, motivation and sensory perception.
This condition in chronic pain patients is called allodynia–when a stimulus that normally wouldn't cause pain does. DaSilva says the sudden small spike in dopamine was probably an aversive reaction to environmental stimulation.


text:
package nl.xillio.xill.plugins.database.util;

import nl.xillio.xill.plugins.database.services.BaseDatabaseService;
import nl.xillio.xill.plugins.database.services.MssqlDatabaseServiceImpl;
import org.testng.annotations.Test;

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

import static org.testng.Assert.assertEquals;

/**
 * Unit tests for the Database enum
 *
 * @author Daan Knoope
 */
public class DatabaseTest {

    /**
     * Sets up a sample database and checks its properties
     *
     * @throws Exception
     */
    @Test
    public void testDatabase() throws Exception {
        Database db = Database.MSSQL;
        assertEquals(db.getName(), "mssql");
        assertEquals(db.getDriverClass(), "net.sourceforge.jtds.jdbc.Driver");
        assertEquals(db.getServiceClass(), MssqlDatabaseServiceImpl.class);
    }

    /**
     * Unit test to check if the correct database service is returned for each type
     *
     * @throws Exception
     */
    @Test
    public void testFindServiceClass() throws Exception {
        List<String> names = Arrays.asList("oracle", "mssql", "sqlite", "mysql");
        List<Class<? extends BaseDatabaseService>> expectedResults = Arrays.asList(Database.ORACLE.getServiceClass(), Database.MSSQL.getServiceClass(), Database.SQLITE.getServiceClass(),
                Database.MYSQL.getServiceClass());
        List<Class<? extends BaseDatabaseService>> returnedResults = names.stream().map(Database::findServiceClass).collect(Collectors.toList());
        assertEquals(returnedResults, expectedResults);
    }

    /**
     * Test the findService method when the DMBS type is not supported
     *
     * @throws Exception
     */
    @Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "DBMS type is not supported")
    public void testFindServiceClassUnsupportedType() throws Exception {
        Database.findServiceClass("googledatabase");
    }
}