Jan 23, 2013 (Close-Up Media via COMTEX) --
Landis+Gyr announced the availability of a two-way water metering solution to utilities through the Gridstream platform.

According to a release, the addition of two-way communications for water metering applications allows utilities to leverage the full potential and scalability of the Gridstream network platform, while avoiding costly infrastructure add-ons. The truly two-way device enables near real-time access to critical water assets for visibility into current meter status empowering utilities to address customer concerns and support advanced capabilities such as leak detection, reverse flow and tampering. By offering Gridstream network coverage across electric, gas and now water endpoints, utilities realize system-wide command and control and single network management.

Story continues below ↓

"Using the latest technology and feature sets, the solution supports most vendors' residential and commercial water metering products and maximizes operational efficiencies," says Randy Edwards, Group Product Manager at Landis+Gyr. He adds, "The easily retrofitted device leverages existing installed meters a key factor as we strive to provide low cost of ownership solutions and meet ever-evolving industry requirements quickly and efficiently."
Available options include a 3-wire retrofit solution for existing pit and wall-mount AMR installations, as well as an integrated register and communications module for new AMI installations. All deliver an integrated, proactive and interoperable solution, furthering the Landis+Gyr commitment to next-generation water measurement for the smart grid.

Tim Weidenbach, Vice President of Product Management at Landis+Gyr, stresses, "We've supported water utility customers over fixed networks for years. Extending Gridstream's proven benefits to water metering was the next logical step in meeting multi-utility needs. We are excited to bring this comprehensive solution to market and, ultimately, help utilities serve their customers better."
Interested utilities can experience the new water solution in action at DistribuTECH 2013 (January 29-31), by visiting Landis+Gyr in booth 2315.

More information:
www.landisgyr.com
((Comments on this story may be sent to newsdesk@closeupmedia.com))


Pressure ulcer prevention: a randomized controlled trial of 2 risk-directed strategies for patient surface assignment.
To compare the clinical utility, in terms of incidence of pressure ulcer (PU) development, and economic impact of 2 programs of patient surface assignment for PU prevention. Randomized controlled clinical trial with economic evaluation. 30-bed multidisciplinary intensive care unit (ICU), serving as the regional trauma center. 144 consecutive eligible patients at risk for the development of PUs. PU risk was assessed on admission using the Skin Ulcer Risk Evaluation (SURE) Score, and patients were randomized to either the experimental (purchase) or control group (purchase/rent). Based on their SURE Score, patients were assigned a specialty surface if needed. Patients received head-to-toe skin assessments twice weekly, new PUs were documented, a new SURE Score was calculated, and specialty surfaces were upgraded or downgraded as necessary. The incidence of PUs by site and severity, and cost. Multivariate logistic regression and decision modeling. No significant differences were detected between groups with respect to baseline population characteristics, nor in the development of PUs. Predictors of PU development were ICU length of stay and SURE Score. The experimental (purchase) group was the less costly strategy. Under baseline assumptions, surface costs per at-risk patient were $76 CDN and $171 CDN in the experimental and control groups, respectively. The savings of $95 CDN per at-risk patient translates into conservative annual savings of $47,500 CDN. Using an objective, risk-based method of patient surface assignment, the authors compared the clinical and economic outcomes of 2 programs of PU prevention. In a direct comparison of alternatives, the strategy that emphasized purchased rather than rented products proved to be the more economical. Finally, this approach illustrates how by prospectively capturing data on both the costs and consequences of competing alternatives, a more objective and informed decision-making process can result.


High resolution computed tomography of the inferior alveolar and lingual nerves.
Coronal and axial high resolution computed tomography of the mandible extends facilities in dentoalveolar surgery. Preoperatively the relationship between the mandibular canal and the roots of deeply displaced third molars can be determined precisely. After surgical removal of lower wisdom teeth iatrogenic defects of the lingual cortical bone can be detected. The additional information obtained when compared with conventional radiographs is demonstrated in case descriptions. Indications for this technique, radiation exposure and implications for surgery are discussed.


import { getGlobalVariable } from '../../utils/env';
import { deleteFile } from '../../utils/fs';
import { ng } from '../../utils/process';

export default async function() {
  const { stdout: commandOutput } = await ng('version');
  const { stdout: optionOutput } = await ng('--version');
  if (!optionOutput.includes('Angular CLI:')) {
    throw new Error('version not displayed');
  }

  const argv = getGlobalVariable('argv');
  const veProject = argv['ve'];

  const ivyWorkspaceMatch = veProject
    ? 'Ivy Workspace: No'
    : 'Ivy Workspace: Yes';
  if (!optionOutput.includes(ivyWorkspaceMatch)) {
    throw new Error(`Expected output to contain ${ivyWorkspaceMatch}`);
  }

  if (commandOutput !== optionOutput) {
    throw new Error('version variants have differing output');
  }

  // doesn't fail on a project with missing angular.json
  await deleteFile('angular.json');
  await ng('version');

  // Doesn't fail outside a project.
  process.chdir('/');
  await ng('version');
}


Saudi Arabian billionaire businessman Prince Alwaleed bin Talal has been freed after a high-profile detention during a crackdown on corruption, describing his arrest as a "misunderstanding." Speaking to Reuters just ahead of his release Saturday, Alwaleed said that there were no charges against him following his arrest as part of a nationwide crackdown on corruption last November. "There are no charges. There are just some discussions between me and the government. Rest assured this is a clean operation that we have and we're just in discussion with the government on various matters that I cannot divulge right now. But rest assured we are at the end of the whole story. And I'm very comfortable because I'm in my country, I'm in my city, so I feel at home. It's no problem at all. Everything's fine," he said. The interview, given from his suite in the Ritz-Carlton hotel in Riyadh where he and many other of the detainees had been kept for the last two months, was the first that the prince had given since being detained.

$100 billion embezzlement

In the November crackdown, the Saudi government arrested and detained several hundred businessmen, senior officials and Saudi royals like Alwaleed, many within the Ritz-Carlton hotel. Multiple reports, citing anonymous sources, have suggested that detainees handed over assets in order to buy their freedom. Alwaleed, the billionaire owner of international investment company Kingdom Holding, told Reuters that he had accepted the interview request with the news agency because he was upset by media reports that had suggested he'd been sent to prison and tortured. "All lies. It's very unfortunate," he said. The crackdown was overseen by Saudi Crown Prince Mohammed bin Salman who is leading a reform drive in the country aimed at diversifying the economy away from oil and reforming Saudi society.

Saudi's Attorney General said in November that the government estimated that "at least $100 billion has been misused through systematic corruption and embezzlement over several decades" and said 208 individuals had been arrested as part of the crackdown, with seven released without charge. Speaking to CNBC at the World Economic Forum (WEF) in Davos, Saudi Finance Minister Mohammed Al-Jadaan was asked whether the government had recovered any of the $100 billion. "Did we recover $100 billion? I can't comment on that. Did we recover some of that? Yes. And I have said it previously, we are using some of it. And by the way these are very smart people and they don't leave cash in their bank accounts. We are unlikely to recover cash in a significant amount in the short term … We have recovered some cash and we are using it to finance the recent allowances (to state employees) that were announced by the King earlier this month."

Unknown financial settlement

Asked what kind of financial settlement was being discussed to ensure his release, Alwaleed told Reuters that there was "not necessarily" a settlement but added that he couldn't divulge any information as to the terms of his release. However, he said that a Bloomberg report that the government wanted a "big percentage of Kingdom Holding and would like to get $6 billion" was false. Shares of the Riyadh-listed company jumped to its 10 percent daily limit in an unusually active session on Sunday. Alwaleed told Reuters the company would remain under his ownership and that no assets would be transferred to the state.


Practical application of sharing surveillance data.
This article provides several practical and effective mechanisms for reporting meaningful information on nosocomial infections to critical care and other specific units. Roadblocks and a small sample of hospital practices for reporting unit-specific infections are described. Graphic presentations, especially line-stay histograms, are recommended.


Bernardo Leyenda

Bernardo Alejandro Leyenda (born 26 March 1980 in Buenos Aires) is a retired Argentine football goalkeeper.
He played for River Plate of the Primera Division Argentina in 2006/2008, but never played any games. In January 2008, he was transferred to Racing but he also failed to make an appearance for La Academia.
Leyenda has kept goal for Vélez Sársfield, Banfield and Independiente as well as Leganés in the Spanish Segunda División.

External links
 Racing Club player profile
 Argentine Primera statistics

Category:1980 births
Category:Living people
Category:Sportspeople from Buenos Aires
Category:Argentine footballers
Category:Argentine expatriate footballers
Category:Argentine expatriate sportspeople in Spain
Category:Association football goalkeepers
Category:Club Atlético Vélez Sarsfield footballers
Category:CD Leganés players
Category:Banfield footballers
Category:River Plate footballers
Category:Racing Club de Avellaneda footballers
Category:Nacional Potosí players
Category:Defensa y Justicia footballers
Category:San Martín de Tucumán footballers
Category:Club Atlético Independiente footballers
Category:Argentine Primera División players
Category:Expatriate footballers in Bolivia
Category:Expatriate footballers in Spain


Occurrence of malignant hyperpyrexia in a patient with osteogenesis imperfecta.
Probable malignant hyperpyrexia (MH) developed and was successfully treated in a 20-yr-old man during anaesthesia for reduction of a fractured mandible. The sister of this patient had died after an anaesthetic at the age of 14 yr, but malignant hyperpyrexia was not suspected. Subsequent enquiries revealed that the patient and his sister both had osteogenesis imperfecta. This case illustrates the infrequently reported association of malignant hyperpyrexia with osteogenesis imperfecta, and the difficulties in obtaining an adequate personal and family history of previous anaesthetics.


Does The 30% Ruling Matter?

Internationals in the Netherlands a have been in a tizzy this week about the announced changes to the 30% ruling. A Change.org petition has garnered nearly 8,000 signatures. So what’s all the op hef about?

What is it?

Qualified highly-skilled migrants are eligible for the so-called 30% ruling wherein you do not pay income tax on the first 30% of your earnings. There’s a number of requirements, including that you must earn a certain amount of money and you can’t live within 150 km of the Dutch border. Dutch citizens are eligible if they haven’t lived in the Netherlands for ten years.

Essentially, the 30% rule is supposed to offset the costs of living abroad. It purports of offset relocation costs, travel home, extra expenses for schooling and lack of secondary spouse wages. It’s also supposed to assist employers with recruiting international talent.

What is the change?

A reduction in the number of years that you can qualify was planned during the 2017 coalition talks. The coalition agreement stated that it was going to reduce the number of years from eight to five but didn’t specify when or how that ruling would apply. This week, it announced that not only will it be changed for future applicants but also people currently holding the status. That means if you moved here in the past few years, obtained the 30% ruling and were told it was good for eight years, it is not. It is good for five years. (Starting on January 1, 2019.)

(If you have the 30% ruling or you were planning to get it, you should talk to a tax adviser, because I am not one.)

Understandably, people who have the ruing are upset. And it does seem incredibly unfair to be promised something which is then revoked. Adding extra fuel to the fire, when the government reduced the ruling from ten years to eight a few years ago, it grandfathered in those who had been eligible for the ten years.

Why are they changing it?

The Dutch government produced a report last year that looked into whether or not the 30% ruling was accomplishing its goals. The report found that there were about 60,000 people using the tax break which cost the Dutch treasury 755 million euros in 2015 and was estimated to cost 902 million euros in 2017. (There were no 2017 numbers available at the time of the report.)

The report found that, in interviews with 30% ruling recipients, the 30% ruling wasn’t a deciding factor in taking a job in the Netherlands for many. This is because many didn’t find out about the benefit until after they moved here. The reduction in years was done, in part, because the report also found that some 80% of ruling recipients only used it for five years, not the full eight anyway. This is mostly due to people leaving the Netherlands or changing jobs to a position where they are no longer eligible.

Further, it concluded that because the time limit for similar schemes in other countries is less than the eight years offered in the Netherlands, reducing the number of years wouldn’t reduce the competitiveness of the Netherlands.

At the end of the day, the Dutch government doesn’t think this tax scheme, as it stands, is worth the cost to the country’s purse.

How does it work in other countries?

One of the arguments is that by reducing the 30% ruling, the Netherlands puts itself at a disadvantage against other countries. I’m not convinced. I am, obviously, not an international tax expert, but it doesn’t seem to me that the Netherlands, even at the reduced five year max, is that out of line compared to other countries.

Denmark has a so-called expat scheme which caps the maximum tax rate at 26% for five years. Spain reduces the top tax bracket and only taxes income earned in Spain for six years. France has a partial income tax reduction for eight years. Belgium has a special tax status which can offer some tax advantages. Canada and the US seem to offer none.

The bottom line

Making the reduction retroactive is a bad and dumb thing to do. People are clearly annoyed but more than that, the 30% ruling makes a considerable difference in ones income so yanking the rug out from under people who already have it is grossly unfair. The Dutch government should grandfather in people who had the ruling for eight years and, if they want to change it, only enforce that for new applicants.

Should the Dutch government get rid of it? Probably. There seems to be little evidence that it is useful for recruitment broadly speaking. A reduction in the number of years isn’t likely to make other countries more attractive financially, as most other countries limit their expat tax schemes to six years or less. If it isn’t helpful in recruitment and costs the public purse nearly a billion euros a year in tax revenue, it doesn’t seem sensical to keep it on.

Moreover, I don’t think it should exist at all. If Dutch employers want to recruit top talent from abroad, and they can’t do that without paying higher wages, then they should pay higher wages. The burden on recruitment for companies shouldn’t be on the taxpayer, but on the company.

ICAP found last year that 63% of foreign employees got no assistance with school fees and 80% got no assistance with housing. Perhaps this companies could offer some useful perks to their employees rather than relying on the Dutch tax paper to underwrite them.


Q:

SQL Server XML Data Type and QUOTED_IDENTIFIER

Can anyone provide insight into this?
I've developed an import process using an XML data type. After the data is inserted in to a table by the import sProc I run another procedures to update another table with the imported table.
The update procedure throws an exception if it is created with SET QUOTED_IDENTIFIER OFF. I'd like to understand why that is happening.
Here's the code:
DECLARE @xmlRecords XML
SET     @xmlRecords = (SELECT importedXML FROM importTable WHERE importId = @lastImportId)

UPDATE  o
SET     o.ReferralCode = import.refCode
FROM    (
            SELECT  records.record.value('(@orderId)[1]', 'INT') AS orderId,
                    records.record.value('(@refCode)[1]', 'VARCHAR(15)') AS refCode
            FROM    @xmlRecords.nodes('/records/record') records(record)
            ) import
            INNER JOIN tblOrder o ON import.OrderId = o.orderId

I'm assuming it has to do with the quoted datatypes ('VARCHAR(15)') or the xml query path elements ('/records/record').
Thanks for any insight you can provide.

A:

A very simple test case
set quoted_identifier off

DECLARE @xmlRecords XML
SET     @xmlRecords = '<records><record orderId="1" refCode="1234"></record></records>'

SELECT  records.record.value('(@orderId)[1]', 'INT') AS orderId
FROM    @xmlRecords.nodes('/records/record') records(record)

Gives

Msg 1934, Level 16, State 1, Line 8
  SELECT failed because the following
  SET options have incorrect settings:
  'QUOTED_IDENTIFIER'. Verify that SET
  options are correct for use with
  indexed views and/or indexes on
  computed columns and/or query
  notifications and/or xml data type
  methods.

This is documented in passing here

Executing XQuery and XML data
  modification statements requires that
  the connection option
  QUOTED_IDENTIFIER be ON.

I haven't seen a reason why this is a requirement for xQuery though.


8. Remove a tank for liquid of a washer of a windshield and a broad tank.

9. Remove radiator fans, a casing and a radiator.

10. Disconnect hoses of supply of cooling liquid to a heater.

11. Remove residual pressure in a fuel tank for what remove a stopper of a bulk mouth, then disconnect toplivop rovoda from the engine and close them traffic jams.

12. Disconnect a cable of management of a butterfly valve and draft of management of a transmission.

13. Take a plait of wires from fastening brackets to a lobby and the left side of the engine and a transmission.

14. On cars with the amplifier of a steering unscrew bolts of fastening of the pump of the amplifier of a steering and move it aside, without disconnecting hoses.

15. On models with the air conditioning system unscrew bolts of fastening of the compressor of the conditioner and move it aside, without disconnecting hoses, and using a soft wire, tie up it to a body.

16. Disconnect a reception exhaust pipe from a collector.

17. On the models with four-cylinder engines equipped with the oil heater installed between an oil filter and the block of cylinders remove an oil filter and disconnect hoses from the oil heater.

18. Hook on the engine slings of the load-lifting mechanism and raise the engine so that the top of the engine was perceived by the load-lifting mechanism.

19. Remove the right suspension bracket of the power unit. For removal of the right suspension bracket of the power unit remove the hinge (And), unscrew a coupling bolt (In) and remove a suspension bracket of the power unit (C).

20. Unscrew the bolt fixing a suspension bracket of the power unit (And) to a body from a radiator.

21. On models with an automatic transmission remove a protective plate of the hydrotransformer from forward part of a transmission. Disconnect the hydrotransformer from a plate of the drive and move it to a transmission case.

22. Unscrew bolts of fastening of a transmission to the engine and separate the engine from a transmission, thus the hydrotransformer has to remain in a transmission case. If the engine is removed together with a transmission, do not unscrew bolts of fastening of a transmission to the engine, and disconnect power shafts, wires, hoses, a cable of gear shifting and a cable of a speedometer from a transmission.

23. Check that anything, except engine support does not connect the engine and a transmission to a car body any more.

24. Support a transmission a jack through wooden whetstone. Unscrew bolts of fastening of support of the power unit.

25. Slowly lift the power unit from a motor compartment.

26. Move the engine from the car aside and lower on wooden supports on a floor or remove a flywheel/plate of the drive and install the engine on a special bed.


454 P.2d 599 (1969)
BALCOM INDUSTRIES, INC., a Colorado corporation, Plaintiff in Error,
v.
Lavern C. NELSON, John Haley, William D. Patterson and Willard R. Quirk, d/b/a Nelson, Haley, Patterson and Quirk, Engineering Consultants, Defendants in Error.
No. 22483.
Supreme Court of Colorado, In Department.
May 12, 1969.
Rehearing Denied June 9, 1969.
M. E. H. Smith and W. A. E. Mitchell, Greeley, for plaintiff in error.
Houtchens, Houtchens & Dooley, John J. Dooley, Greeley, for defendants in error.
*600 MOORE,[*] Justice.
Plaintiff in error, hereinafter referred to as Balcom, commenced an action against the defendants in error, who will be referred to as defendants, the purpose of which was to recover damages allegedly sustained by Balcom resulting from "faulty and defective design and plan" of blue-prints prepared by defendants for the construction of a bean storage bin.
It was alleged in the complaint:
"That in June, 1962, the plaintiff, relying on the defendants' skill in designing and drawing plans for storage structures, employed said defendants to design and draw the plans and specifications for a bean storage bin, and pursuant to said employment the defendants designed and drew the plans or specifications for the construction of a bean storage bin for the plaintiff and were paid therefor the sum of Three Hundred Forty-one Dollars ($341.00)."
It was also alleged that the contractor employed by Balcom "complied with the design, plans and specifications for the construction of said bean storage bin as designed, planned and executed by said defendants." It was further alleged that due to the
"negligence, lack of skill and faulty and defective design and specification-plans as prepared by the defendants, said bean storage bin lacked internal support, causing said walls to collapse inward and also resulted in the roof separating from the top of the bin * * *"
all of which resulted in damages to Balcom in the total sum of $16,252.35.
The defendants filed a third party complaint against the contractor employed by Balcom to build the bean storage bin. In the present posture of the case these third party proceedings are immaterial to any issue presented and accordingly will not again be mentioned.
For answer to Balcom's complaint the defendants denied negligence and lack of skill on their part, and affirmatively alleged that:
"The damages complained of by plaintiff, if any were in fact suffered, were proximately caused by the acts of another person or persons not under the control of these defendants and for whose acts these defendants are not liable."
The issues were tried to the court in a three day trial during the course of which the trial judge made an inspection of the storage bin as it appeared following completion of the work allegedly required to place it in usable condition. The judgment entered by the trial court contained the following pertinent findings of fact concerning the manner in which the bean storage bin was erected by the contractor employed by Balcom:
"4. That said construction was not in accord with said plans in the following respects:
"(a) the walers constructed on the outside of the building consisted of 11 in number instead of 12 as provided in said drawings;
"(b) said walers did not consist of one continuous member as provided in said drawings but consisted of more than one board which boards were lapped together and fastened with one bolt and which, therefore, were not the equivalent to one continuous member; that view by the Court revealed that said walers were `elbowed' inward in several places and had also sagged downward; that the vertical rebars were not continuous in every instance and the horizontal rods were inadequately fastened to each other by loops rather than by a tie or welding;
"(c) that the roof rafters were not lapped to the studs as shown in the drawings but were notched;
*601 "(d) that while the testimony concerning the requirements for the beams at the top of the building for the support of the rebars differed, the Third Party Defendant testified he was advised to build said beams of two 2 × 12 pieces of timber; that said Third Party Defendant did not make said beams of continuous 2 × 12 members but fastened two 2 × 12 timbers together so as to have the structural equivalent of only one 2 × 12 timber.
"5. That said construction variations from plans were material.
"6. After completion of said bin, certain `kickers' were left in said bin by Third Party Defendant and said `kickers' were not included in said plans; that holes existed in the bin during the first winter of its use; that buckets were hung on the rods which extended horizontally through the interior of the building and that people on occasion walked along or across said rods, all of which caused or contributed to cause or which might have contributed to cause the failure of said bin.
"7. That whether the plans were adequate or inadequate to accomplish the purpose desired concerns an area of expert opinion or judgment and that no negligence in the exercise of such opinion or judgment has been established by a preponderance of the evidence."
The conclusions of law entered by the trial court were:
"That a condition precedent to liability for negligent designs or plans is that construction be in accord with said designs or plans and said condition precedent has not been proved here by a preponderance of the evidence;
"That there can be no liability on the part of Defendants to Plaintiff on account of error in the area of opinion or judgment and that no negligence in the exercise of such opinion or judgment has been established here by a preponderance of the evidence;
"That matters other than faulty designs or plans were the proximate cause of the failure of said bin and the required proximate causal connection between the alleged negligent designs or plans has not been established by a preponderance of the evidence; * * *."
Judgment was entered in favor of the defendants. As grounds for reversal Balcom's attorneys present argument under ten captions. Reduced to its essence the entire argument is that the evidence was insufficient, as a matter of law, to sustain the findings of fact made by the trial court. Counsel for defendants argue that there is ample competent evidence supporting the finding of the trial court that the plans prepared by the defendants were not followed in material respects and that an element essential to recovery for defective building plans is proof that the building was erected according to the plans prepared by the defendants.
Our search of the record discloses sufficient competent evidence to support the findings of fact made by the trial court. No error was committed in applying the law to the facts thus found. In Covil v. Robert and Company Associates, 112 Ga.App. 163, 144 S.E.2d 450, we find:
"When a case is based upon negligence of an architect or engineer in preparing plans, it is essential that the plaintiff prove that construction of the project designed was accomplished in compliance with the plans and specifications furnished by the defendant * * *."
In 5 Am.Jur.2d, Architects § 23, we find the following apt quotation:
"* * * an architect is not liable if the employer has failed to follow the plans in an important particular and damages result which may have been due to such departure."
The judgment is affirmed.
PRINGLE, HODGES and LEE, JJ., concur.
NOTES
[*]  Retired Supreme Court Justice sitting under assignment by the Chief Justice under provisions of Article VI, Section 5(3) of the Constitution of Colorado.


"Raven showed up again in his Geno Saurer." "I somehow managed to win." "The Death Saurer." "And I was still trying to get to the Imperial throne." "0)}The Capital Ablaze" "I want to thank you again for saving me." "You've helped to keep hope alive for the Empire." "Prozen has to be stopped!" "thank him." "and I was just following his lead." "I would certainly like to thank him as well." "Here they come." "This is Black Angel I." "it's time to take these guys out of the sky." "Roger." "Storm Sworder..." "Enjoy your remaining moments." "This time I've got your number." "I'll take care of the incoming poggies." "You guys move on ahead." "Roger." "you'd better hang on tight." "We're about to go a whole lot faster." "OK." "I'm very happy that you two are still alive." "And it's not just because you keep looking out for me." "Ala Barone calling Herman." "It would appear that Lord Prozen is definitely planning to take control of the Empire." "I copy that." "Hurry." "The imperial capital Guygalos is just beyond that hill." "the Gogulas unit has been delayed." "All right." "We'll just have to make due till they get here." "Hey there!" "How exactly do you figure that we're supposed to escape from here?" "Saving His Highness was the most important thing." "After that point we're all expendable." "Say what?" "Speak for yourself!" "That's not what I signed up for." "What the..." "Is that the Republican Army?" "Look!" "The support I requested from the President." "Thank goodness they've arrived!" "Ha!" "Very nicely done one and all." "Doctor D!" "You saved us!" "Sure about that?" "We're not saved yet." "Fire!" "Fire!" "How dare they!" "Lieutenant Hardin!" "The Republican forces are overwhelming us here." "We should retreat into the city and rethink our strategy." "You coward." "There will be no retreat." "We will make our stand here!" "Lord Prozen!" "Citizens. we have been deprived of our beloved crowned Prince Rudolph. our enemy does not give us the time to properly mourn the loss of our prince!" "I must admit." "I'm quite impressed with you skill..." "But..." "He's much more maneuverable." "You rely in your Zoid's abilities too much!" "You're supposed to guide your Zoid with your spirit." "With your spirit." "foolish republican forces have began to invade our territory." "do not intend to accept that." "I promise to fight back." "And I will continue to fight until the day that the Republic is defeated." "That was the will of our late Emperor Zeppelin." "Those were his last words." "your time has come." "Time to show the world your power!" "What was that?" "What could possibly do something like that?" "No way!" "A column of Shield Ligers wiped out in an instant?" "!" "And that must be the beast of destruction... the ancient legend... the Death Saurer!" "citizens?" "That is the result of our scientific achievement." "the Death Saurer." "We have acquired the greatest power known to Zi in all history." "Prozen!" "Rudolph." "You'll never become the Emperor while I have this." "I am the Emperor." "It's not important anymore." "Because I know my people don't wish for such an immense power." "And I'm just asking you to stop involving the people in your meaningless wars." "How dare you!" "The Empire belongs to me now." "I will do what I want with it!" "the truth is revealed." "You're not fighting for the Empire." "There's no honor at all in your intentions." "You just want to destroy and annihilate." "So what?" "and power is everything in this world." "Only he who possesses the most power has the right to rule." "Don't you small-minded people understand that?" "What will it take to make you people bowel?" "Another little demonstration of my power?" "Monster!" "Can't reason with him anymore." "Prozen..." "That's it!" "That's it!" "Let it all just burn to the ground." "We've gotta stop him somehow." "OK." "Let's try to hit him with everything we have." "Are you kidding?" "Ordinary weapons against the power of the Death Saurer?" "Everyone listen." "Launch a barrage at that Death Saurer." "I want you to concentrate all fire on it." "It must be stopped!" "We did it!" "No!" "Not yet." "The Blade Liger." "Van." "What?" "Real dealing or something?" "Hey man!" "I'm here now." "We're so glad that you're OK." "OK then." "Let's start making up for lost time." "Sieg!" "So that's it." "Today all this madness ends!" "huh?" "Then Raven must have screwed up." "what incredible power!" "It won't even let me get in close." "Van." "I've seen those moves before." "Back when I defeated your father." "My dad? I'll tell you that the one who killed Dan Freiheit was in fact me." "What?" "! I sent in the Third Division of the Imperial Army. his life would have been spared." "You..." "You will pay!" "I've taken everything that I want so far." "and the Empire itself." "And soon the entire Planet Zi will be under my rule alone." "You haven't beaten me yet." "And I'll never quit!" "Plan on beating me with words?" "Like your father before you." "boy." "What?" "Bring it on! Only you have the power to defeat him." "For the sake of the Empire." "wait." "For the sake of everyone on Planet Zi." "You must not lose against Prozen." "You kids can forget it." "He don't have a chance against me." "Not even the slightest one." "I'm not about to let you have all the fun." "We wouldn't want you to forget that we are here to help too." "Irvine!" "Moonbay!" "miracle boy!" "but I can't wait to see your next move." "Van." "You and me." "Let's show them exactly what a true Zoid pilot is capable of." "You guys... somehow you managed to give hope to everyone." "And respond with the best that they can give." "That's why you're strong." "And that's why you won't lose." "Right." "Ready to go?" "Yes!" "guys." "That Death Saurer is going down." "What's this?" "You dare to stand up to me?" "Heads up!" "Fall back!" "Do you think it's that easy?" "Their shields were completely useless!" "Oh no." "We might just be way out of our league here." "we're gonna need about ten times what we've got." "Damn!" "How Prozen is able to pilot it?" "He's not piloting it." "Prozen has been possessed by the evil consciousness of the Death Saurer." "Look at that thing." "The Death Saurer has no weak points that we can exploit." "I'd say it's still a lot thougher than that of the Gustav." "Then what are we supposed to do? we have to hit the Zoid Core deep within it." "We have to hit the Zoid Core?" "That's right." "The energy source for the Death Saurer is derived from the Zoid Cores taken from other fallen Zoids." "Which means that its Zoid Core has been compressed several times more than those of normal cores." "I get it." "So where is its Zoid Core?" "This part of the Death Saurer is protected by armor that is thicker than necessary." "If I were a betting man I'd say that's where the core is." "then the Zoid Core should become unstable and blow itself up." "And how do you figure we're gonna do all that?" "well." "We also need a Zoid with blade strong enough to cut through that armor." "And it will have to be an ultrafast Zoid that can also outmaneuver it." "And that means the only Zoid that we have here that has all of those capabilities is Van's Blade Liger." "I sure hope you're right about all you said." "Van?" "Yes." "Van?" "If you take a direct hit from you're dead." "No matter how though the shield is on the Blade Liger." "I know." "But remember... the Death Saurer can freely alter the aim and direction of its charged particle gun." "And it's able to fire several times in succession." "be very careful as you approach!" "Van." "But there's no choice!" "There's one way to keep it from its charged particle gun." "Fiine..." "You know that fan on its back?" "That's a particle intake fan." "it won't be able to generate the charged particles necessary to fire its gun." "I see." "That makes sense!" "Fiine!" "just leave it to us." "We'll take out that fan for you." "glad to hear you're safe." "right?" "that will be easy." "But we'll need someone on the ground to make it stop moving for five seconds." "Five seconds?" "That's a piece of cake." "All take care of that." "Irvine." "Van." "You'll finish the job." "OK." "I got it." "Right." "I'll stop it even if I have to plown into him." "Hang on." "what?" "The Command Wold won't hold up against that thing for five seconds." "Take this instead." "Our Gojulas has finally arrived." "A Gojulas?" "You want me to pilot it?" "That's right." "I'm ready to do my part." "I'll provide support fire." "I'm counting on you all." "Let's mobilize!" "Yeah! launch a barrage on the Death Saurer!" "Fire everything you've got at it." "Don't let it fire its charged particle gun." "commence attack." "Don't let the Republicans take all the glory." "Irvine!" "Concentrate on his right leg!" "All right." "huh?" "And what are they gonna do?" "Your Zoids stand no chance." "back off!" "You're supposed to stay back and give support fire." "Not a chance." "and I wanna do what I can. watch yourself for that Gojulas." "He looks sloppy over there!" "Yeah." "Let's see how you do with the Royal Saber Fang on your tail." "As always." "Boys will be boys." "I grow tired of this." "All wipe you all away at once." "Fire on the missile launchers!" "Let's go!" "Yeah." "Do it now!" "Now is your chance!" "Ala Barone!" "Roger." "What a joke." "Do they really believe that they can stop the Death Saurer like that?" "Go." "Here it goes." "fire!" "That's good thinking." "But it's not gonna work." "The charged particle intake fan has been damaged." "We're done." "are you all right?" "Viola!" "Yeah." "I'm fine." "Rosso." "All right." "Now then!" "Hang on." "Sieg?" "Fiine?" "Booster on!" "Opening blades." "What's the matter with you?" "Are you gonna let them bit you?" "You are the most powerful Zoid of all time!" "no!" "The fan!" "Sieg!" "Blade Attack!" "Is he gonna make it?" "That's it." "the beast of destruction." "Now fire the charged particle beam!" "Destroy everything in sight!" "Van!" "Careful!" "Don't charge on!" "Die!" "Van!" "How can he stand a direct blast from the charged particle beam?" "I get it." "The Blade Liger's blade." "It's emiting small electronic impulse vibrations." "And that's what is neutralizing the charged particles." "It almost looks like he's cutting right through the particle beam." "That's amazing!" "Van!" "Van." "How could this happen?" "! this is your chance to finish the Death Saurer!" "While he is powering down." "Let's go!" "I don't understand." "What went wrong?" "I had all the power in the world." "And it still wasn't enough." "What went wrong?" "! Your Emperor." "Where's Van?" "Where did he go?" "He must be with Fiine.." "That's right." "They still have the Zoid Eve to find somewhere out there..." "You sure it will be OK with them?" "yeah." "They know that I'm not the type for all that fancy stuff." "Sieg?" "89)}Preview" "I guess the show is over." "What are you talking about?" "Van is about to take the exams to join the special forces!" "You mean he hasn't had enough battles?" "Of course." "But it looks like just he and Fiine are going on a new adventure." "We're not gonna be in the show?" "Actually..." "Spit it out already!" "OK." "A misterious Red Organoid appears before us." "It turns out to be a powerful Zoid that has never appeared before." "Zoids episode 35:" "The Secret Mission." "361)}The Secret Mission" "I hope you watch!" "We're not gonna be in it?" "!"


Many electronic devices include one or more analog-to-digital converters (ADCs), for converting analog signals to digital signals for additional processing in the digital domain. Several types of ADCs are available, each with varying advantages and disadvantages. For example, a successive approximation register (SAR) ADC may provide an area and power-efficient architecture for low to medium accuracy analog-to-digital conversion applications. A SAR ADC may use a comparator and logic to approximate a digital value corresponding to an analog input. Another type of ADC is referred to as a flash ADC, which may provide a faster conversion speed at the cost of an exponential increase in power and area consumption.


/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.apache.camel.component.atmosphere.websocket;

import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;

import org.asynchttpclient.AsyncHttpClient;
import org.asynchttpclient.AsyncHttpClientConfig;
import org.asynchttpclient.DefaultAsyncHttpClient;
import org.asynchttpclient.ws.WebSocket;
import org.asynchttpclient.ws.WebSocketListener;
import org.asynchttpclient.ws.WebSocketUpgradeHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class TestClient {
    private static final Logger LOG = LoggerFactory.getLogger(TestClient.class);

    private List<Object> received;
    private CountDownLatch latch;
    private AsyncHttpClient client;
    private WebSocket websocket;
    private String url;

    public TestClient(String url, AsyncHttpClientConfig conf) {
        this(url, conf, 1);
    }

    public TestClient(String url, int count) {
        this(url, null, count);
    }

    public TestClient(String url) {
        this(url, null, 1);
    }

    public TestClient(String url, AsyncHttpClientConfig conf, int count) {
        this.received = new ArrayList<>();
        this.latch = new CountDownLatch(count);
        this.client = conf == null ? new DefaultAsyncHttpClient() : new DefaultAsyncHttpClient(conf);
        this.url = url;
    }

    public void connect() throws InterruptedException, ExecutionException, IOException {
        websocket = client.prepareGet(url).execute(
                new WebSocketUpgradeHandler.Builder()
                        .addWebSocketListener(new TestWebSocketListener()).build())
                .get();
    }

    public void sendTextMessage(String message) {
        websocket.sendTextFrame(message);
    }

    public void sendBytesMessage(byte[] message) {
        websocket.sendBinaryFrame(message);
    }

    public boolean await(int secs) throws InterruptedException {
        return latch.await(secs, TimeUnit.SECONDS);
    }

    public void reset(int count) {
        latch = new CountDownLatch(count);
        received.clear();
    }

    public List<Object> getReceived() {
        return received;
    }

    public <T> List<T> getReceived(Class<T> cls) {
        List<T> list = new ArrayList<>();
        for (Object o : received) {
            list.add(getValue(o, cls));
        }
        return list;
    }

    @SuppressWarnings("unchecked")
    private static <T> T getValue(Object o, Class<T> cls) {
        if (cls.isInstance(o)) {
            return (T) o;
        } else if (cls == String.class) {
            if (o instanceof byte[]) {
                return (T) new String((byte[]) o);
            } else {
                return (T) o.toString();
            }
        } else if (cls == byte[].class) {
            if (o instanceof String) {
                return (T) ((String) o).getBytes();
            }
        }
        return null;
    }

    public void close() throws IOException {
        websocket.sendCloseFrame();
        client.close();
    }

    private class TestWebSocketListener implements WebSocketListener {

        @Override
        public void onOpen(WebSocket websocket) {
            LOG.info("[ws] opened");
        }

        @Override
        public void onClose(WebSocket websocket, int code, String reason) {
            LOG.info("[ws] closed");
        }

        @Override
        public void onError(Throwable t) {
            LOG.error("[ws] error", t);
        }

        @Override
        public void onBinaryFrame(byte[] message, boolean finalFragment, int rsv) {
            received.add(message);
            LOG.info("[ws] received bytes --> " + Arrays.toString(message));
            latch.countDown();
        }

        @Override
        public void onTextFrame(String message, boolean finalFragment, int rsv) {
            received.add(message);
            LOG.info("[ws] received --> " + message);
            latch.countDown();
        }

    }
}


688 P.2d 103 (1984)
69 Or.App. 717
1000 FRIENDS OF OREGON, Petitioner,
v.
LAND CONSERVATION AND DEVELOPMENT COMMISSION, Respondent.
83-ACK-105; CA A29157.
Court of Appeals of Oregon.
Argued and Submitted March 19, 1984.
Decided September 19, 1984.
*104 Robert L. Liberty, Portland, argued the cause and filed the briefs for petitioner.
Michael B. Huston, Asst. Atty. Gen., Salem, argued the cause for respondent. With him on brief were Dave Frohnmayer, *105 Atty. Gen., James E. Mountain, Jr., Sol. Gen., Michael D. Reynolds and Mary J. Deits, Asst. Attys. Gen., Salem.
Paul J. Speck, Bend, filed a brief amicus curiae for Jefferson County.
Before GILLETTE, P.J., JOSEPH, C.J., and YOUNG, J.
GILLETTE, Presiding Judge.
Petitioner 1000 Friends of Oregon (1000 Friends) seeks review of respondent Land Conservation and Development Commission's (LCDC) acknowledgement of Jefferson County's comprehensive plan. 1000 Friends attacks LCDC's approval of 15 "exception" areas in agricultural land bordering the City of Madras and of a provision of the comprehensive plan's Range Land (RL) zone permitting the unreviewed creation for three years of one 40-acre parcel per year out of larger parcels. We reverse and remand.

EXCEPTION AREAS
Because of recent statutory changes and decisions of this court, the first question to consider is the criteria by which we evaluate LCDC's approval of the exception areas. Before August, 1983, LCDC recognized, in Goal 2 and in its administrative rules, three bases for exceptions to the requirements of the resource goals: need, built upon and committed. The needs exception was provided in Goal 2 itself, and required consideration of the need for the exception, alternatives to it and the effects of granting the exception.[1] LCDC, by rules adopted in July, 1982, made these Goal 2 requirements more specific. Former OAR 660-04-020 (amended December 30, 1983). LCDC developed the built upon and committed exceptions after the adoption of the goals; it also gave them formal status in July, 1982. Former OAR 660-04-025 (amended December 30, 1983). In August, 1983, after LCDC's action in this case, we held that these last two exceptions procedures were invalid because they permitted exceptions that did not comply with the goal criteria; only the needs exception, which was in the goal itself, was permissible. Marion County v. Federation for Sound Planning, 64 Or. App. 226, 232-235, 668 P.2d 406 (1983). On the same day, we applied our decision in Marion County to sustain 1000 Friends' challenge to exceptions taken in the Marion County comprehensive plan, although 1000 Friends had not itself challenged the validity of the exceptions processes. We did so because our contemporaneous disposition of the two challenges to the same comprehensive plan justified our treating challenges to the exceptions in the two cases in the same manner. 1000 Friends of Oregon v. Marion County, 64 Or. App. 218, 224 n. 4, 668 P.2d 412 (1983).
In this case, as in 1000 Friends of Oregon v. Marion County, supra, 1000 Friends has challenged the application, not the validity, of the built upon or committed exceptions before LCDC and in this court, and there is no other party who does challenge their validity. Still, having once declared the built or committed exceptions improper, there would be a certain incongruity in our disposing of a later case as if the exceptions were permissible. Fortunately, *106 this incongruity has been remedied by legislative developments.
One day before our Marion County decisions, a legislative revision of the exceptions process became law. Or. Laws 1983, ch. 827, § 19a (codified as ORS 197.732). It enacted into law all three bases for exceptions and provided new criteria for each. Future LCDC decisions on exceptions will be made according to the new statutory criteria and to the rules LCDC recently adopted to explain and expand on them. See OAR 660-04-000 to XXX-XX-XXX (filed December 30, 1983, and March 21, 1984). The criteria do not affect exceptions which were validly adopted under the old criteria. ORS 197.732(9).[2] The statutory and rules changes place this judicial review proceeding in an interesting posture. If we were first to examine the exceptions taken by the county and approved by LCDC under the old statutory scheme, we might find them impermissible for the reasons expressed in Marion County v. Federation for Sound Planning, supra, and 1000 Friends of Oregon v. Marion County, supra. However, on remand the new statutory criteria and administrative rules would apply. As it happens, those new rules and criteria are the functional equivalent of the ones under which LCDC believed (incorrectly) it was properly operating when it decided this case in the first place. We think it follows from the foregoing that this is a case in which it is appropriate to go ahead and examine the exceptions under the new criteria because LCDC has already expressed its view on how it would apply those criteria, and the new ones are sufficiently similar to the old ones. Any action which would be valid under the former rules would be valid under the new criteria and rules.
The contested exceptions areas encircle Madras and its Urban Growth Boundary (UGB) on three sides, starting on the north and continuing around the east, ending up south of the city. There is only one small gap. All the areas border on the UGB or are directly connected to it by other exceptions areas, including several which 1000 Friends does not challenge. Their physical arrangement gives the appearance that they have the effect of extending the UGB through the exceptions process. The county describes them as being in a transition area which cannot be included in the UGB because of the inability to extend sewer service to them. All the areas are planned RR (rural residential), with the ultimate planned use being scattered homes on one or two acre lots. Some of the challenged areas are presently zoned DR (development reserve), with a provision that the DR areas adjoining the Madras UGB be considered for inclusion in the UGB before rezoning to RR.[3] Much of the land in the DR areas is presently in irrigated agricultural use; most of the rest is undeveloped.
The basis on which the county took the challenged exceptions, and on which LCDC approved them, is unclear. LCDC stated that the county took them "on the combined basis of commitment and need." It also stated that "a `needs' exception for these areas, standing alone, would be an inadequate basis for an exception. * * * [T]his report relies primarily on the findings of commitment provided in supporting the County's exceptions taken on the combined basis of commitment and need." 1000 Friends argues, with considerable force, that these statements show that LCDC failed to find that the areas met all requirements of either the needs or committed exceptions and, instead, approved them on some combination of the two. LCDC disputes this interpretation of its *107 action,[4] apparently agreeing  as do we  that it could not properly approve the exceptions without finding that each area met all of the requirements for at least one kind of exception. The most plausible explanation of LCDC's action is that it found that the county failed to show a need for the areas but used the information tending to show a need to bolster the claim that the areas are committed. For the purposes of this opinion, however, we give LCDC the benefit of the doubt and assume that it found that the areas fully satisfy the requirements for both exceptions.
The questions on our review of LCDC's approval of the exceptions are, first, whether LCDC's determination that the county's findings and reasons demonstrate that the exceptions areas are either needed or committed, and, second, whether its statement of reasons explaining that determination are legally correct. ORS 197.732(6)(b), (c). Although LCDC would be bound by the county's findings of fact if they were supported by substantial evidence, ORS 197.732(6)(a), whether LCDC was correct in finding such substantial evidence is a question of law. The relevance of the facts that the local government found to the criteria for the exceptions and the issue of whether the facts found show that the areas meet the requirements for the exceptions are also questions of law.[5]
*108 The former Goal 2, Part II, needs exception is phrased in terms of criteria which the local government should discuss, and the needs exception in ORS 197.732(1)(c)[6] is phrased in terms of standards the local government must meet, but the considerations in each case are similar. Each requires a showing that areas that do not require an exception cannot accommodate the proposed use, and each requires a statement of reasons that the goal should not apply. Former Goal 2 II(a), (b); ORS 197.732(1)(c)(A), (B). The county's strongest claim for a needs exception is for the DR areas adjacent to the UGB, and we will look at that claim first.
In Still v. Board of County Comm'rs, 42 Or. App. 115, 122, 600 P.2d 433 (1979), rev. den. 288 Or. 493 (1980), we stated:
"* * * A market demand for rural residential development * * * does not constitute a `need' for it, as that word is used in Goal # 2. Goal # 3 was enacted to preserve agricultural land from encroachment by urban and suburban sprawl by subordinating the free play of the marketplace to broader public policy objectives. Land is not excepted from the agricultural goal merely because somebody wants to buy it for a house."
The parties agree that a memorandum of May 27, 1983, from Pat Amadeo of the Governor's office to the members of the Senate Committee on Environment and Energy (the Amadeo memorandum) provides the authoritative statement of the legislative purpose in adopting ORS 197.732. The memorandum quotes most of the above language from Still and also states:
"[I]t is very important to note that it is the intent of [ORS 197.732(1)(c)(A)] that the Commission not change its existing policy and rules pertaining to exceptions for rural residential housing on resource lands. That rule now allows housing to support economic activities which require or need a rural location but does not allow rural residential development based solely on general market demand, past development or population trends."
Jefferson County claimed a need for the DR exception areas because it expected significant population growth outside existing UGBs and these lands were necessary to accommodate them. That analysis is inadequate. So far as we can tell, it is based precisely on the "general market demand, past development or general market trends" which the Amadeo memorandum indicates is impermissible. In addition, as LCDC recognized, the county made no effort to determine if densities within existing UGBs could be increased to handle the *109 expected growth. Without that determination, it is impossible to say that the DR exceptions areas are needed to provide for growth. The county's submissions and an aerial photograph in the record show that there is presently a large amount of undeveloped land within the Madras UGB. There is no discussion in the record of how many people it can accommodate at urban densities. There is a total failure to show that there is any "need" for residential land outside the county's UGBs.
LCDC found that a plan provision requiring a review of the adjacent DR areas for possible inclusion in the Madras UGB before rezoning to RR made up for the failure to show that the areas were needed. We do not see how the provision could do so for those areas; it certainly did not for the non-adjacent DR areas. Jefferson County has planned all the exceptions areas as rural residential. Under the DR designation, those lands may later be changed to RR zoning and development without further LCDC involvement, even if they do not qualify for inclusion in the Madras UGB. All that the plan requires is a hearing to consider expanding the UGB; rezoning can occur, whatever the results of the hearing. That provision is meaningless. LCDC found little else to justify a needs exception. Its analysis is even weaker for the non-DR areas. It erred to the extent that it approved the exception areas on the basis of need.[7]
The committed basis for the exceptions is stronger than is the need basis. Most of the areas have portions on which homes have been built, many of them in platted and partially developed subdivisions. 1000 Friends does not dispute that those portions are committed. Other portions of the areas, however  in many cases the major portions  are in irrigated or dry land agriculture, in grazing or are presently unused.[8] The county explained its determination that the entire areas are committed with a general statement covering all of the areas and specific information on each individual area.[9] Its general statement refers to the division of the areas into separate parcels and ownerships and states that they are not developed to the maximum usable density, which it apparently assumes to be two-acre parcels. It then rejects possible expansion of the Madras UGB into the areas covered by the exceptions because of fiscal inability to expand the Madras sewer system sufficiently. It continues:
"The better alternative to UGB expansion is to locate needed development in rural areas which will not conflict with agriculture. The development should be at a density which will not create new urban density developments, so that additional UGB's and urban-agricultural conflicts are not created. These areas should be on the least productive land available in the area, and, unless otherwise necessary, should be adjacent to land already committed to rural development."
The county's discussion is directed to the need to develop the exception areas, not to the extent of their previous commitment to rural residential uses. Nothing in this statement shows that uses allowed by *110 the applicable goals are impracticable. ORS 197.732(1)(b). The county appears to be making a weak needs justification rather than a committed justification, or possibly to be establishing a basis for extending the UGB in the future. It seems, in fact, to assume continued sprawl and to try to direct it where it will do the least damage. (The assumption of two acre lots for these areas can only be described in this way.) The county's general justification of these committed exceptions is not in itself adequate.
LCDC apparently sustained the committed exceptions because divided ownerships and residential developments surrounding most of the agricultural land in the exception areas make continued agricultural use impracticable. It thus implicitly accepted the county's specific justifications for the individual areas.[10] For each exception area the county provided general information on ownerships, lot sizes, services and adjacent uses. Much of the information was similar for all of the areas, and there are similar problems with the county's analysis. All of the areas have certain basic services  electricity, domestic water and telephones. A number have irrigated agriculture closely adjoining existing rural residential development. The county treats this juxtaposition as creating inevitable conflicts from spray drift, field burning smoke and plowing dust, and it proposes to resolve the conflicts in favor of residential use. While these conflicts may be a factor in showing that it is impracticable to continue agricultural use of an area, they are not conclusive. People who build houses in an agricultural area must expect some discomforts to accompany the perceived advantages of a rural location. If problems of this sort by themselves justified a finding of commitment, it would be impossible to establish lasting boundaries between agricultural and residential areas anywhere, yet establishing those boundaries is basic to the land use planning process.
Materials in the record show the average parcel size, the number of parcels and the largest and smallest parcels in each area. The county noted that all post-1973 partitions were made pursuant to the county's 1973 comprehensive plan, but it did not otherwise discuss how the existing development pattern came about or how previous partitioning decisions related to the goals. OAR 660-04-028(2)(c)(A) requires this information and also provides:
"Past land divisions made without application of the Goals do not in themselves demonstrate irrevocable commitment of the divided land. Only if existing development on the resulting parcels or other factors prevent their resource use or the resource use of nearby lands can the parcels be considered to be irrevocably committed. Resource and nonresource parcels created pursuant to the applicable goals shall not be used to justify a committed exception."
There is also no information on any separate parcels that may be farmed as a unit, as OAR 660-04-028(2)(c)(B) requires.[11] Without knowing how present development came about, and with only limited information on present use, it is difficult to determine if future development is the unavoidable result of the Madras area's growth or whether it will continue previous patterns which themselves developed contrary to the goals. The information for each area on the number of potential buildable lots, assuming two acres to a lot, is irrelevant to *111 whether the area is committed, as is the information on soil classes. Much of the other information goes to the needs exception that we have already found to be unsupportable. We now turn to a discussion of the specific areas with these considerations in mind.
Areas M-2, M-5, M-6, M-7, M-9, and M-13 together run along the northeastern boundary of the Madras UGB and part way down its eastern side. They have areas of residential development and also, as ground and aerial photographs make abundantly clear, a large irrigated agricultural area at their heart, directly connected with agricultural areas within the UGB. Other portions of the areas are in dry land farming or are unused. The residential areas, including partially developed platted subdivisions, are probably either built upon or committed, but we cannot say from the information in the record that the agricultural area or the undeveloped areas are committed.
The northern portions of M-2 and M-5 are undeveloped and in large parcels which the county has not shown to be committed. According to 1000 Friends, they include several 40-acre parcels. These exceptions areas also include part of the irrigated agricultural section we described above. M-6 consists almost entirely of irrigated agriculture. M-7 is at the edge of these areas and, except for a few houses at the northern end, is entirely undeveloped. The county's only justification for an exception for the undeveloped portion is that it will provide for projected population growth. M-9 has a residential area in the center with several large agricultural parcels connected to the agricultural portions of the other areas. Those parcels, particularly the ones east of the residential area, have not been shown to be committed. M-13 has some development in the east and a large agricultural parcel, part of the same area, in the west. The county has not shown that any of these areas is committed in its entirety.[12]
Area M-11 is a 320 acre strip along the eastern side of the Madras UGB. The county states that it is unused; 1000 Friends, supported by an aerial photograph, states that it has a portion in dry land farming. In any case, there is no information showing it to be impracticable to preserve the area for resource uses. M-16 and M-17 are connected areas on the southeast of the UGB. They are presently undeveloped except for a small amount of farming. Their eastern boundary is irrigated agriculture. The county's justification is that they are needed; there is no information showing that they are committed. M-18 is directly south of M-17. It has some residential development and at least one 38-acre parcel; it is bordered on three sides by open agricultural lands. The county has not shown that the entire area is committed.
Areas M-22, M-23 and M-25 are connected areas south of Madras. There are unchallenged exception areas between them and the UGB to the north. M-22 is in two parcels. According to the county, the northern parcel is currently in horse pasture with little present conflict with surrounding uses. The county has not shown that it is committed. The southern section has some agricultural production. On the west is irrigated agriculture, and on the east is M-24. Nothing shows that M-22 is committed. M-23 and M-25 together form an actively farmed area, with some housing on the edges. The county states that there *112 are conflicts between agricultural and residential uses because of plowing, spraying and burning. This conflict is not sufficient, given the limited residential development and the active agricultural use, to show that continued agricultural use is impracticable.
Area M-24 is east of the previously discussed areas and is in two parcels, one mostly west of Highway 97 and one east of Highway 26. Between the two parcels, and separated from them by the highway grades, is a triangle of agricultural lands. The land in the exceptions area is heavily subdivided and built on, with a few larger parcels and some personal farms. The development in the area makes it likely that the entire area is committed. However, this area appears to be a strip development, and the county has not adequately discussed how the goals were applied to its creation. For this reason, we cannot say at present that it qualifies for a committed exception.
Area M-26 is a square mile located directly east of M-24. The northwestern corner is a developed subdivision which has been extended by a plat over an additional portion of the area. Part of the area is agricultural, and the rest is unused. There is nothing to support a finding that the area is committed, except for the portion actually built upon. A platted but undeveloped subdivision does not show commitment.
Because the county treated each exception area as a unit, and because LCDC approved each area as a unit, our determination that there are portions of each area which the county has not shown to be committed requires us to reverse LCDC's approval of the entire areas. For the county to justify built upon or committed exceptions, it will have to focus on precise, probably disconnected, areas rather than attempting to ring the UGB with exception areas. To comply with the statute and to aid our review, the county and LCDC should carefully distinguish factors which they believe show that a particular area is committed from those which they believe show that it is needed. Our review of these exceptions has been hampered by the limited information the county provided, the lack of an evidentiary record, LCDC's ambiguous approval of the exceptions and the failure of both the county and LCDC clearly to distinguish the information relevant to the needs exception from that relevant to the committed exceptions. The county and LCDC on remand should keep in mind that an exception must be just that  exceptional.[13]

RANGE LANDS
The comprehensive plan places over a third of Jefferson County in the RL (range land) zone, planned for livestock ranching and related agricultural uses. It is an exclusive farm use (EFU) zone under ORS 215.203-215.337. Many units in this area are large  some are over 60,000 acres  and the plan states that it is impossible to establish a minimum lot size sufficient to insure agricultural use of the land unless the minimum is far larger than that used anywhere else. The county nevertheless adopted a 40-acre minimum lot size, which is half the minimum size for the A-1 (irrigated agricultural) zone. After LCDC rejected its original submission, the county modified the regulations concerning the RL zone so that they now permit the creation each year of one 40-acre parcel from each larger holding for three years. The creation at any time in the future of a fourth parcel from a holding existing at the adoption of the plan will require approval as a subdivision. The county also placed restrictions on building on the parcels as a way of preserving agricultural uses. If a parcel is over 320 acres, the county would allow farm dwellings and related buildings as a matter of right. It assumes that smaller parcels are nonagricultural and permits dwellings on them only if they *113 meet the statutory requirements for nonfarm dwellings in an EFU zone.[14]
LCDC explains that the county has not chosen to protect its agricultural range land by either a minimum lot size standard or by performance standards to be applied individually to each partition. Rather, it has chosen a combination of the two, seeing the placement of a dwelling, rather than the partition, as the crucial event taking the land from agricultural use. The requirement of subdivision approval for the fourth partition combined with the generally large landholdings in the area will, the county and LCDC believe, make the impact of this provision on the livestock industry minimal. They point out that there have been very few sales of parcels of this or smaller size in recent years and that only some of those sales involved new owners rather than sales among existing ranchers. LCDC states that it expects less rather than more development under this plan than will occur in other counties which rely solely on minimum lot sizes. We find LCDC's reasoning interesting but not persuasive.
Goal 3 provides that:
"[s]uch minimum lot sizes as are utilized for any farm use zones shall be appropriate for the continuation of the existing commercial agricultural enterprise within the area."
1000 Friends argues, and the county and LCDC apparently concede, that a 40-acre parcel is not usable for livestock raising unless it is combined with larger neighboring parcels. LCDC, in fact, assumes that the 40-acre lots will be for nonfarm purposes. It states that "this minimum lot size is intended to function as one which is appropriate for nonfarm dwellings where the standards of ORS 215.213(3) and others are met." The county justifies the 40-acre minimum in part as being large enough that the rancher who sold it originally would be willing to repurchase it from a disillusioned suburbanite. These explanations clearly contemplate that the 40-acre parcels will ultimately be taken out of range land use. The 40-acre minimum does not adequately protect range land and thus does not comply with the minimum lot size provisions of Goal 3.
LCDC's position seems to be that the 40-acre minimum combined with the restrictions on building constitute performance standards that insure that land will be committed to non-range use only after application of the statutory standards for nonfarm dwellings.[15] It states that "the creation of a 40-acre parcel is not considered by Jefferson County to be either a nonfarm parcel or an acreage homesite and the creation of such a parcel in no way implies approval of a nonfarm dwelling." Yet it also states that "this minimum lot size is intended to function as one which is appropriate for nonfarm dwellings where the standards of ORS 215.213(3) and others are met." These statements may not be logically inconsistent, but they underline that neither LCDC nor the county has suggested any purpose for 40-acre parcels other than nonfarm dwellings. So far as the record reveals, there simply is nothing both agricultural and economically profitable that one can do with a 40-acre parcel of range land in Jefferson County.
This point becomes more important when one considers the statutory provisions that will apply to these parcels. With the county's *114 permission  and there are no standards to guide the county in giving or denying permission  the owner of a lot may use it for a private park, a hunting reserve, a campground or a private use airport. One can readily envision someone who permanently resides far from Jefferson County buying a 40-acre parcel and coming with his or her friends and their recreational vehicles to camp and hunt on it. That person might even drill a well and bring electricity on the land, providing hookups for the vehicles. One can also envision a hunting club buying a parcel and setting up a camp on it. There would suddenly be precisely the uses the goal is designed to prevent, and the diversion of land from agricultural use it is designed to forestall, all occurring with no necessity to consider the purposes of the goal.
Even without those developments, the creation of the parcel is a change in the situation which makes it more likely that the county will ultimately approve a dwelling. One criterion for approval of a nonfarm dwelling in an EFU zone is whether the land is generally unsuitable for farm use, and one test of unsuitability is the size of the tract. ORS 215.213(3)(b); ORS 215.283(3)(d). The very creation of a 40-acre parcel makes it unsuitable for range use unless it is worked in conjunction with the neighboring land, and LCDC and the county have given no reason to believe that people are likely to purchase parcels of this size simply to lease them back to the rancher from whom they were purchased.[16] Contrary to LCDC's analysis, the proper time to apply the standards is when the parcel is created; the creation of the parcel  and possibly its subsequent use  changes the situation in a way which will make approval of a nonfarm dwelling more likely than it would otherwise be, contrary to the purposes of the goals. While Jefferson County's approach may be innovative, it is not adequate.[17]
As the foregoing demonstrates, LCDC's decision is inadequate to meet either the former (need) or the additional present (built or committed) statutory and regulatory criteria for the acknowledgement of the Jefferson County Comprehensive Plan.
Reversed and remanded for further proceedings.
NOTES
[1]  Former Goal 2, Part II, provided:

"EXCEPTIONS: When, during the application of the statewide goals to plans, it appears that it is not possible to apply the appropriate goal to specific properties or situations, then each proposed exception to a goal shall be set forth during the plan preparation phases and also specifically noted in the notices of public hearing. The notices of hearing shall summarize the issues in an understandable and meaningful manner. If the exception to the goal is adopted, then the compelling reasons and facts for that conclusion shall be completely set forth in the plan and shall include:
"(a) Why these other uses should be provided for;
"(b) What alternative locations within the area could be used for the proposed uses;
"(c) What are the long term environmental, economic, social and energy consequences to the locality, the region or the state from not applying the goal or permitting the alternative use;
"(d) A finding that the proposed uses will be compatible with other adjacent uses."
[2]  ORS 197.732(9) provides:

"An exception acknowledged under ORS 197.251, 197.625 or 197.630(1) (1981 Replacement Part) on or before August 9, 1983, shall continue to be valid and shall not be subject to this section."
[3]  The county in its submission to LCDC noted that five of the areas  M-2, M-6, M-11, M-16 and M-17  are zoned DR. It appears that two other areas  M-23 and M-25  are also zoned DR. The first five areas abut the Madras UGB; the latter two do not. There is apparently no requirement that those two areas be considered for inclusion in the UGB before rezoning to RR.
[4]  In its brief, LCDC attempts to explain its language by suggesting that it approved the five contiguous DR areas on the basis of both need and commitment and that it approved the other exceptions on the basis of commitment alone. The record does not permit this interpretation of LCDC's action. The county's justifications for several non-DR areas, including M-7, M-22 and M-26, rely heavily on an alleged need for the land to accommodate future population. These areas must be among those the county took partially on the basis of need and therefore among those LCDC approved on the combined basis of commitment and need.
[5]  This statement makes the situation appear simpler than it is. In fact, it is difficult to fit what occurred in this case  and what may occur in many acknowledgment cases  into normal administrative fact finding procedures. The county did not develop its comprehensive plan through procedures similar to a contested case. There were public hearings on the plan and its amendments, but the character of those hearings and what transpired at them is not in the record. The county's factual findings consist simply of data sheets summarizing certain characteristics of each exceptions area and, for most of the areas, a short narrative which combines facts and conclusions in an attempt to show that the area is committed. So far as we can tell, these findings are also the only facts in the record. Because the findings are not based on an evidentiary record, they are necessarily not supported by substantial evidence in the record.

The legislature and LCDC expect those objecting to a proposed plan acknowledgment to present additional facts as part of their objections, but they do not state how those additional facts can affect the county's findings. ORS 197.251(4) provides that LCDC, in reviewing acknowledgement requests, "shall not allow additional evidence or testimony that could have been presented to the local government or to the director but was not." (Emphasis supplied.) OAR 660-03-020(1) provides a period of time after submission of the acknowledgement request for interested persons to submit their comments to the Department of Land Conservation and Development. OAR 660-03-020(4) provides that LCDC will not allow additional testimony or evidence that could have been presented to the director in accordance with the rule but was not. The Amadeo memorandum, infra, in explaining ORS 197.732(6)(a), states that LCDC "can only consider new evidence outside the local record which is allowed to be submitted through the existing acknowledgement review process." LCDC thus has the authority to consider facts which are not in the local government's evidentiary record, if there is one, if the objector submits those facts to the director in time. This would seem to be a futile exercise if the local government's findings supported by substantial evidence in the record would still be conclusive. However, those findings are not supported by substantial evidence in this case.
The legislature has tried to force the acknowledgement procedure into the Procrustean bed of a contested case, but those involved in the field know that acknowledgement is sui generis and apparently go their merry way, ignoring contested case procedures. In this case, the county presented facts in its acknowledgement request which are not supported by substantial evidence, 1000 Friends in its objections presented additional facts which also are not supported by substantial evidence, and no one has raised any questions about the procedure. There do not appear to be significant factual conflicts, at least so far as the exceptions areas are concerned. For lack of any better alternative, we will accept as correct all facts presented.
That we accept the facts as correct does not mean that we are bound by the legal conclusions the county or LCDC drew from them. Whether a given set of facts shows that an area qualifies for an exception requires applying the statute and the appropriate rules to the accepted facts. As the Amadeo memorandum explains:
"[T]he Commission independently decides whether a local government's findings and reasons demonstrate if the exception standards have or have not been met. Neither the [LUBA] Panel nor Commission are [sic] bound as are Courts traditionally to merely decide if a local government's decision meets all the procedural requirements and was supported by substantial evidence and findings. Rather, the Panel and the Commission decide if the local government's findings and reasons demonstrate compliance."
We take this statement to mean that whether the county has shown adequate justifications for the proposed exceptions is a question of law, both for LCDC and for us. While that determination is for LCDC in the first instance, we review whether it is correct, giving such deference to the agency as its special expertise, if any, may justify. ORS 183.482(8)(a); ORS 197.732(6)(b).
[6]  ORS 197.732(1)(c) provides:

"(1) A local government may adopt an exception to a goal when:
"* * *
"(c) The following standards are met:
"(A) Reasons justify why the state policy embodied in the applicable goals should not apply;
"(B) Areas which do not require a new exception cannot reasonably accommodate the use;
"(C) The long term environmental, economic, social and energy consequences resulting from the use at the proposed site with measures designed to reduce adverse impacts are not significantly more adverse than would typically result from the same proposal being located in areas requiring a goal exception other than the proposed site; and
"(D) The proposed uses are compatible with other adjacent uses or will be so rendered through measures designed to reduce adverse impacts."
[7]  The county suggests that ORS 197.712(g)(A), which requires local governments to provide reasonable opportunities to satisfy local and rural needs for residential and industrial development and other economic activities outside urban growth boundaries, supports the county's actions. It suggests no reason why we should construe the statute as having a different meaning from that of the needs exception in ORS 197.732(1)(c). The same legislature adopted each provision, and we do not think that it intended to require local governments to satisfy needs which they could not otherwise show existed.
[8]  That land is unused is not a basis for finding it committed to non-resource uses. The issue is not whether making the land available for non-resource use would interfere with the existing resource uses but whether the land is committed to non-resource uses. Evidence that it is not used for any purpose is, if anything, evidence that it is not committed.
[9]  Although we review LCDC's action, not the county's, we must necessarily evaluate the basis for the county's decision in order to evaluate LCDC's approval of it. This is especially true in this case because LCDC's findings are ambiguous, unfocused and limited.
[10]  It is questionable whether LCDC's findings constitute a "clear statement of reasons which sets forth the basis for the determination" that the committed standards have been met. ORS 197.732(6)(c). The findings on the basis for the exceptions are ambiguous and do not discuss in any depth reasons showing that the areas are committed. LCDC acted before the new exceptions statute became law, but it was then required on acknowledgement review to adopt "a clear statement of findings" in support of its determination of compliance with the goals. ORS 197.251(5)(b). While 1000 Friends points out some of the ambiguities in LCDC's findings, it does not argue that the decision as a whole fails to meet these requirements. We will therefore not decide the issue.
[11]  Former OAR 660-04-025(5), (6) (amended December 30, 1983) had similar requirements to those of OAR 660-04-028(2)(c).
[12]  Some of the information in this paragraph comes from the county's previous submission to LCDC as well as from its current submission. LCDC found that the first submission did not demonstrate commitment. It appears that the county, on its second submission, omitted some information which tended to show a lack of commitment in these areas. The record on M-5 and M-7 provides examples of that tendency.

LCDC, in responding to 1000 Friends' objections to these areas, apparently placed the burden on 1000 Friends to show that the areas are not committed. That is improper. LCDC's role is to use all of the information available, including that presented in objections, to make its independent determination of whether the county has shown that the exceptions are justified. LCDC should evaluate the strength of the county's case, not the weakness of the objector's.
[13]  The reasons for our rejection of the committed exceptions apply under the criteria of former OAR 660-04-025 (amended December 30, 1983), as well as under the current criteria.
[14]  At the time the county and LCDC acted, ORS 215.213(3) governed nonfarm dwellings in EFU zones. The 1983 legislature modified ORS 215.213(3) and added ORS 215.283(3) as an alternative set of criteria. Or. Laws 1983, ch. 826, §§ 6, 17. The county may use either statute to test nonfarm dwellings unless it chooses to designate marginal lands under ORS 197.247 or to allow dwellings under ORS 215.213(4) to (8); in that case, it must use ORS 215.213(3). ORS 215.288. The Jefferson County Comprehensive Plan refers only to ORS 215.213(3) as controlling its designation of nonfarm dwellings. We assume that the county will in fact use either set of criteria to the extent that it is legally able to do so.
[15]  LCDC describes the county's approach as one of combining a minimum lot size with a special performance standard. Because LCDC recognizes that a minimum lot size by itself would not comply with Goal 3, we think it clearer to treat the provisions as special performance standards, with the minimum lot size as one of the standards.
[16]  Under ORS 215.213(3)(b) lot size is a criterion only if the parcel cannot reasonably be put to farm use in conjunction with other land. The 1983 legislature added this limitation; it was not in existence when LCDC acknowledged the plan. Or. Laws 1983, ch. 826, § 6. ORS 215.283(3)(d) does not have this limitation; so long as the county does not act to designate marginal land under ORS 197.247 or to allow the establishment of dwellings under ORS 215.213(4) to (8), it is free to apply the less restrictive criterion. Thus, we need not determine whether the limitation applies only if the other land is in the same ownership as the parcel in question.
[17]  We cannot find, as LCDC and the county have asked us to do, that the Jefferson County Comprehensive Plan meets the recently adopted substantial compliance test of ORS 197.747. The test provides that "`compliance with the goals' means the comprehensive plan and regulations, on the whole, conform with the purposes of the goals and any failure to meet individual goal requirements is technical or minor in nature." This test is for LCDC to apply in the first instance, and it has not done so. In any event, we have not been asked to review the entire Jefferson County plan and thus cannot say whether, on the whole, it conforms with the purposes of the goals. Our previous discussion shows that the goal violations we have identified are neither technical nor minor.


Q:

How to convert a value to CGPoint?

I have the problem that I want to use a variable in an action, which has not the matching type. I therefore get the following error: Cannot convert value of type 'SKSpriteNode' to expected argument type 'CGPoint'.
func enemyProofNextFields() {

    for i in 0...41 {

        if getDistance(knightRed.position, grassTileArray[i].position) > 120 && getDistance(knightRed.position, grassTileArray[i].position) < 121 {

            possibleEnemeyFields.append(grassTileArray[i])
        }
    }

    var lenght = possibleEnemeyFields.count
    let randomNumber = Int.random(in: 0 ... lenght)
    print("Random Enemy Number: \(randomNumber)")
    var position = possibleEnemeyFields[randomNumber]

    let move = SKAction.move(to: position, duration: 0.3) //here is the error
    knightRed.run(SKAction.sequence([move]))

}

For any answer I would be very grateful.

A:

The error is pretty clear: possibleEnemeyFields contains obviously SKSpriteNode instances, but the first parameter of move expects a CGPoint, assumedly the position
You probably mean
let field = possibleEnemeyFields[randomNumber]
let move = SKAction.move(to: field.position, duration: 0.3)


Chugger Pump Stainless Steel-Center X-Dry via Adventures in Homebrewing

More Info

From the product description, check product page for current description, price and availability: Stainless Steel Head X-Dry Chugger Pump New & Improved with Run Dry Protection! Add the optional reducer to make a 1/2″ FPT on the inlet port Chugger SS Center

Model : XCPSSCI-1 X-DRY

Description

Features FDA approved Run Dry Carbon Bearing Material

Chugger SS Center Inlet Pump 3/4″ Inlet x 1/2″ outlet.MPT

316 Stainless Steel (Front Housing), 316 Stainless Steel (Rear Housing), Teflon (Thrust Washer), CLEAR Silicone (O-Ring), POLYSULFONE (Impeller) Max Flow 7 GPM 22.7 LPM

Max Head 18.6 FT 4.1 M

Power .04 HP .029 KW

Electrical 115V 50/60HZ

Non-Submersible

60HZ 50HZ Can handle liquids of 250F

Materials are FDA Food Compliant

Components are UL Recognized

I use my homebrew pump for vorlaufing/recirculating, transferring from my mash tun to brew kettle, chilling with a recirculating wort chiller and transferring to my fermenter. You could also use a brewing pump to recirculate ice water for your wort chiller. Pumps are a necessity if you want to use a plate chiller. You really need one to properly clean and sanitize your plate chiller.

As of this posting this is selling for $159.99. Price, promotions and availability can change quickly. Please note that product prices and availability are subject to change. Prices and availability were accurate at the time this post was published; however, they may differ from those you see when you visit the product page. Check the product page for current price, description and availability.

Save 15%! Adventures in Homebrewing is discounting most things sitewide by 15% when you use coupon code LABOR. Nearly everything, including many items that are already on sale work with this sale. A few exceptions apply. See Terms and Conditions for complete details. That makes this pump just $135.99.

For comparison, MoreBeer has this pump – screenshot – (similar, but may not be identical) for $219.99. Check link for current price.

Chugger Pump Stainless Steel-Center X-Dry – remember coupon code LABOR

Update: This promo has expired or pricing, availability or description has changed – Check the supplier’s site or product page for current availability

Recent Deals! Last Fifty Finds

Related:

Also: Check out AIH Sale Items – Selection Changes Regularly

More: Recent AIH Finds

prod:aihceninletchugger tag:aihperoff


Now that Thanksgiving has passed and we can officially welcome the Christmas season, we can all start binge-watching films that fill us with holiday cheer. Thankfully, Netflix is currently streaming a handful of seasonal movies to get you in the mood. Here are some of the best ones to watch over the next few weeks.

The Holiday Calendar

This family-friendly film follows a young woman who realizes that her grandmother's Advent calendar might be hiding something magical. Every day, something unexplainable happens, and she realizes that the Christmas calendar might be answering questions she's long had about her future.

Love Actually

Ever since this film debuted in 2003, it's won the hearts of viewers around the world. Now, we can stream it repeatedly and fall in love as many times as we want to. It is rated R, so maybe save this holiday film for date night, not family movie night.

The Princess Switch

This brand new Netflix original film stars Vanessa Hudgens. A twist on The Prince and the Pauper, the story follows a Chicago baker and a soon-to-be-princess who swap places for the holidays. Mischievous and fun, this is a film the whole family can enjoy.

A Very Murray Christmas In this 2015 holiday special, big-name comedians like Amy Poehler and Chris Rock join Bill Murray as he attempts to salvage his Christmas Eve show when a blizzard threatens to shut everything down. It's equal parts musical and comedy, and the all-star cast is a blast to watch.

The Christmas ChroniclesThis brand-new holiday film casts Kurt Russell as Santa Claus. Some mischievous kids sneak into Santa's sleigh, and their naughty behavior derails Christmas Eve and Santa's plans. Can they save the holiday before it's too late?

A Christmas Prince: The Royal Wedding - Available on Friday

If you loved The Christmas Prince, then you'll adore the sequel that's scheduled to hit Netflix on November 30. Follow Amber as she prepares to marry Richard and become queen of a small nation. Can she handle the pressure of a royal wedding and the expectations of those around her? Find out this weekend.

Which of these films on Netflix are you excited to watch? Let us know in the comments!


/* global jest describe it expect */
jest.disableAutomock()

import React from 'react'
import * as ReactDOM from 'react-dom'
import * as ReactDOMServer from 'react-dom/server'
import * as TestUtils from 'react-addons-test-utils'
import COMPONENT_NAME_HERE from '.'

describe('COMPONENT_NAME_HERE Test', () => {
  it('can render markup', () => {
    const clickFun = function (e) {}
    const actual = ReactDOMServer.renderToStaticMarkup(
      <COMPONENT_NAME_HERE
        fancy={false}
        onClick={clickFun} />)
    const expected = ReactDOMServer.renderToStaticMarkup(

TODO write a test for markup.

    )
    expect(actual).toEqual(expected)
  })

  it('can render fancy markup', () => {
    const clickFun = function (e) {}
    const actual = ReactDOMServer.renderToStaticMarkup(
      <COMPONENT_NAME_HERE
        fancy
        onClick={clickFun} />)
    const expected = ReactDOMServer.renderToStaticMarkup(

TODO write a test for markup.

    )
    expect(actual).toEqual(expected)
  })

  it('can be clicked', () => {
    let clickEvent = 'not called'
    const clickFun = function (e) {
      clickEvent = e.value
    }

    const component = TestUtils.renderIntoDocument(
      <COMPONENT_NAME_HERE fancy onClick={clickFun} />
    )
    // simulate click event
    TestUtils.Simulate.click(
      ReactDOM.findDOMNode(component).querySelector('button'),
      {value: 'clicked'})
    expect(clickEvent).toEqual('clicked',
      'COMPONENT_NAME_HERE click event should be fired')
  })
})