text:
When sickle cell patients arrive at emergency rooms, they often have difficulty getting proper treatment. Paula Tanabe, an associate professor at the Duke University School of Nursing, is working to change that.
Sickle cell disease, a genetic blood disorder most common among people of African descent, affects 100,000 Americans. It causes normally disk-shaped red blood cells to take the form of pointed crescents or sickles.
Common complications include strokes, anemia, severe infections and damage to blood vessels and internal organs. Many people with the disorder are unable to work and and lack health insurance.
Acute and unpredictable pain, severe enough to require large doses of narcotics, is a well-documented feature of sickle cell disease. But Tanabe has found that patients in sickle cell crisis often aren't treated properly by doctors and nurses. They erroneously think the patients may be running scams, seeking drugs.
Patients suffering recurrent episodes know what works for their pain, but some doctors and nurses take that knowledge a sign of addiction. Patients with sickle cell pain wait an average of 30 minutes longer for pain medication than people with other extremely painful conditions, such as kidney stones, Tanabe's research shows.
Tanabe says better training of health providers and changes in emergency room procedures can improve the care that sickle cell patients receive. She spoke recently with our partner Kaiser Health News. The following is an edited transcript of the interview.
Kaiser Health News: What do patients typically experience during pain crises?
Paula Tanabe: What brings people to the emergency room is a crisis in which the blood can't deliver oxygen to the extremities. It is a sudden onset of severe, excruciating pain, which people describe as feeling as if all their bones are breaking. Others describe it as an hourglass and their blood is "stuck." The pain is so bad and sudden that people require high doses of opioids.
Patients who have a regular health care provider and have chronic pain are usually prescribed oral opioids to have at home. They take pain pills by mouth. [But] at the time of a really bad crisis, the pills don't work any more. People need to come in for intravenous pain medication. They usually try to avoid coming into the ER at all costs because they just have to wait a long time.
Are people with sickle cell likely to be addicted to painkillers?
There are no data to support that sickle cell patients have any more likelihood of being addicted than anybody else.
You compared the treatment in emergency rooms of patients with kidney stone pain and with sickle cell disease. What did you find?
A lot of white people get kidney stones and that pain is really, really horrible. Even though sickle cell patients had higher pain scores and were triaged appropriately higher, they still waited longer.
Racism and the disease stigma itself are two barriers that you just can't get away from. Clearly we can't pretend that racism doesn't play some part in this. If this were a white disease, people still wouldn't be dying in their 40s. That's the bottom line. Sickle cell was discovered 102 years ago and there is only one drug, hydroxyurea, and blood transfusions to treat it.
So you believe racism has discouraged progress in treating sickle cell?
It is a rare disease. However, there are other rare genetic diseases that get a lot more attention and people are not afraid to talk about. Cystic fibrosis is a good example, and way more rare than sickle cell. It's a white disease. There is some attention to sickle cell, but it needs more dollars and more research. There are very few hematologists, very few providers across the country, who specialize in it. Patients do need a good hematologist or sickle cell expert to take care of their disease.
There has been progress. People didn't used to live to be adults. Kids would die of stroke or of really bad infections before they were 20, and in some countries they still do. The fact that we have adults is a good thing. All kids are screened at birth in the United States. Once you identify a child, they go on penicillin until they're five, and then they don't get the really bad infections and die from that.
You have done research that documents the problem. Your current research examines methods of improving treatment. What does that involve?
We are implementing some education and some analgesic protocols. We hope this will help lower the time needed for patients to get analgesia, or pain control, and admission rates. We've administered a baseline attitude survey to providers. We will administer it again. We'd like to see improvement in clinician attitude. We're really looking at patient satisfaction, provider attitudes, and then a lot of efficiency outcomes. Another aim of our grant is to put a toolbox together of all the protocols and the educational materials that we've developed and make it available.
Copyright 2023 Kaiser Health News. To see more, visit Kaiser Health News.


text:
I was fairly amazed to see that this lovely theme had not been covered by the Monthly Mingle yet. So, I had to take it up - a Monthly Mingle Brunch!
Brunch is one of those favorite pastimes on a late Sunday morning. It's somewhere between breakfast and lunch and while the usual breakfast fare like, eggs, ham, pancakes, sausages are served during this meal one will also find more hearty quiche, tarts, salads and meat dishes too. I love it because I get the best of both worlds!
It is believed that the term brunch was coined in the United Kingdom in 1896 by the publication Hunter's Weekly, which lead to the phrase becoming slang among youth. However some also believe that New York Morning Sun reporter Frank Ward O'Malley created the term when describing the midday eating habits and practices of reporters.
What does one expect to find at a typical brunch? Well anything goes here - if you are a more breakfast type of person you can indulge in waffles, pancakes, French toast, croissants, pastries, eggs bacon etc. But if you like the more substantial lunch meals then one can enjoy anything from lasagna, seafood, chicken, salads and desserts.
This is it - the grand Monthly Mingle Brunch and I would like to invite you all to join me for this delectable event. I can't party alone would love to have you over for fun and food so bring your Brunch dishes over and we'll be having a grand blast!
Here's how it works:
- Create a dish that fits the Brunch theme as described above.
- Post about it on your blog from now till 16 November 2009 (entries must be in English, please).
- Your creation should be prepared for the current Monthly Mingle theme and shared with a maximum of 2 other blog events. Let's try and keep the creations as fresh as the ingredients you use.
- You must provide a link to this post and/or the official Monthly Mingle page.
- Once you've posted your dish, please fill the Monthly Mingle form to send me your entries.
You can easily access the form via the submission button on the sidebar under the Monthly Mingle "Come Mingle With Me" section or via the official Monthly Mingle page.
If you have any questions, queries or issues drop me an email at:
Never miss a mingle! Keep tabs as the Monthly Mingle travels around the world via the MM Calendar.
Looking forward to seeing you all at the brunch!
All photographs and written content on What's For Lunch, Honey? © 2006-2009 Meeta Khurana unless otherwise indicated. | All rights reserved | Please Ask First

subset: commoncrawl


text:
General Motors posted a weaker-than-expected fourth-quarter profit on Thursday amid disappointing sales, especially outside the U.S.
Net income rose to $913 million, or 57 cents a share, from $892 million, or 54 cents a share, in the same quarter a year ago. Analysts polled by Thomson Reuters had expected 88 cents a share.
According to Reuters:
"The operating profit rose 58 percent to $1.9 billion. Revenue in the quarter rose 3 percent to $40.5 billion, below the $41.08 billion analysts had expected. GM's North American operating profit hit $1.88 billion, up from $1.14 billion a year earlier, but that fell short of the $2.04 billion expected by analysts surveyed by Reuters."
GM also announced up to $7,500 in profit-sharing will be distributed to 48,500 hourly workers in the U.S.
The automaker's earnings report is in sharp contrast to its Detroit rivals. Ford handily beat Wall Street's expectation, based on strong North American and Asian sales. Chrysler, despite a merger with Italy's Fiat, managed to post fourth-quarter earnings that were 74 percent better than the same period a year ago.
"A rough streak in GM's International Operations, which includes China, continued as the unit's profits tumbled 69% to $208 million. The company made about $400 million for the quarter in China, while the rest of the division lost about $200 million."
"GM is slumping in Australia and southeast Asia, where Japanese automakers are flourishing, in part because of the weak yen."
"The automaker's Chief Financial Officer Chuck Stevens, says analysts did not fully account for restructuring ahead of plans to close a key Germany plant this year, according to Reuters."
"Our view is that the sell-side consensus didn't comprehend that restructuring," Stevens told reporters. "The final announcement associated with that wasn't done until early December. Due to that, we needed to book some of the restructuring costs, primarily related to the severance portion of that program."
The company's new CEO, Mary Barra, said in a statement: "The tough decisions made during the year will further strengthen our operations. We're now in execution mode and our sole focus will be on delivering results on a global basis."
Copyright 2021 NPR. To see more, visit https://www.npr.org.


text:
One reason Internet memes — the quirky photos with societal observations that are passed along like genes or around like germs — work so well, is that they tap into something of the moment, a fleeting notion that captures the here and now.
A visual meme is more like a snapshot than an "iconic image" — such as V-J Day in Times Square-- says NPR photo editor Claire O'Neill. An iconic photo is timeless. But "what's 'timeless' about memes is not so much the image, or joke itself, but the timeless thing it is revealing about people."
Visual memes "are a form of observational humor," Claire says: "Everyone knows what it feels like to feel this way."
A meme will probably not live forever, Claire says, but that " sense of feeling bewildered will."
So when we found — in casual research — decades-old images in the archives of the Library of Congress that remind us of memes today, we couldn't help but wonder what kind of smart or snarky memes they would have inspired in their times. Any suggestions? Please keep it civil.
1) Amicable Fellow With Cigarette. On the left, present-day meme of Good Guy Greg from KnowYourMeme and, on the right, The Connoisseur, created by Frank A. Rinehart, 1899, from the archives of the Library of Congress.
2) Amicable Woman With Eager Smile. On the left, present-day meme of Overly Attached Girlfriend from KnowYourMemeand, on the right, The Stenographer, 1923, from the archives of the Library of Congress.
3) Cat in Human Attire. On the left, present-day meme of Business Cat from KnowYourMemeand, on the right, Hanging Up the Wash, one in a series by Harry Whittier Frees, 1914, from the archives of the Library of Congress.
After pondering the differences between memes and iconic photos, Claire O'Neill adds: "To make a long story short, this pretty much sums up how I feel about all this stuff."
The Protojournalist:Experimental storytelling for the LURVers – Listeners, Users, Readers, Viewers — of NPR.@NPRtpj
Copyright 2020 NPR. To see more, visit https://www.npr.org.


text:
Actions for Fraud Survey
Fraud Survey
In a report released today, the NSW Auditor-General, Margaret Crawford provides a snapshot of reported fraud in the NSW public sector and an analysis of NSW Government agencies' fraud controls based on a survey of 102 agencies.
Actions for Agency compliance with the GIPA Act
Agency compliance with the GIPA Act
In a report released today, the NSW Auditor-General, Margaret Crawford found some NSW Government agencies were not publicly releasing all the required information on contracts with the private sector, nor were they publishing it in a timely manner.
This report assessed whether 13 agencies were complying with Part 3 Division 5 of the Government Information (Public Access) Act 2009 (GIPA Act), relating to Government contracts with the private sector.


text:
Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Orion/Contributing Code
The Orion project welcomes code contributions from the public. This page details how to set up a work environment and submit code changes for review and inclusion by a committer. It also describes the process for accepting these changes if you are a committer.
For contributors
Welcome! Thanks for helping us out. We have an understood method for earning your commit rights to the Orion code base. Our overall description is as follows:
Potential committers must have at least 5 reasonable commits, reviewed by 3 different existing committers, over a minimum of 6 weeks of contributions. A review of potential committers will be carried out at the end of each Milestone and at the end of the current release cycle.
Even if you don't become a full-blown committer, you can always contribute on a case-by-case basis, whether by fixing a few bugs or helping us drive the technology forward by focusing on a particular component. Here are the basic steps for finding the most common type of contribution.
Identify an opportunity
For a list of currently-open Orion bugs see the Eclipse Bugzilla database. If a bug's Assignee is an "inbox" name (e.g. "email@example.com") then it has not been assigned to anyone yet, and is a good candidate for investigation. If you plan to fix a bug in Orion that does not already have a bug report then be sure to first log a report, and in the initial comment specify that you are investigating a fix for it. This report should be logged up-front so that if the bug is not one that should be fixed (for example, it is actually working as designed, its component is in the midst of a re-write, etc.), then a committer can add a follow-up comment indicating that the bug is not worth investigating.
New features/enhancements can also be contributed, but for these it is important that a committer comment in its bug report indicate that the feature is desirable. The potential for feature work in any project is limitless, but not all features are good fits, so a feature that was not pre-approved by a committer risks not being ultimately accepted.
Set up a Git repository
The first step is to establish a Git repository. The remainder of this page assumes that GitHub is being used to host your repository, since it is a well-established Git hosting service and the Orion repository is mirrored there. However using GitHub is not a strict requirement.
Once you are logged in to your user account on GitHub, start by navigating to and then creating forks of the https://github.com/eclipse/orion.client and/or https://github.com/eclipse/orion.server repositories. These repositories will initially contain the latest Orion code in their "master" branch, and will eventually receive your code changes for submission.
You should also update your GitHub profile with your picture by using an avatar from gravatar.com. All your commits in the UI will contain your user image and you do not want to see a gray GitHub octocat mascot image in it's place.
Clone your GitHub repository
The next step is to clone your newly-created GitHub repositories into your work environment. For example, if you are planning to use Orion to develop Orion client-side code then you will clone the GitHub repository. Alternatively, if you will be developing Orion server-side code then you will likely use Eclipse as your development environment, and either EGit or command-line Git for cloning your GitHub repository locally.
You can follow Clone the client and server Git repositories into Eclipse
From the command line:
% git clone https://github.com/username/orion.client.git % git clone https://github.com/username/orion.server.git
You can now load the retrieved project(s) from your cloned repository into your workspace.
Create a branch for your work
Before you begin hacking, be sure to create a new branch for your work on this particular task. This branch is where you will ultimately make your changes available from.
To create and switch to the branch in Orion, there is a New Branch link on the Git Repositories page. In Eclipse, select a project, right click and select Team > Switch To > New Branch.
From the command line:
% git branch <name_of_your_new_branch> % git checkout <name_of_your_new_branch>
If you miss this step and start committing changes on the master branch, see Strange commit: Merge remote-tracking branch 'upstream/master'
Sign the Eclipse CLA
If you have not done it already, you must:
- Create an account at Eclipse.org.
- Log in, and sign the Contributor License Agreement (CLA) form.
The CLA must be signed before we can accept your contribution. But on the bright side, this only has to be done once.
Commit your changes
When your changes are ready for submission, you first commit them to your cloned Git repository in your branch. Your commit message should include the bug number and title at the beginning and must include a signoff line at the end, which looks like this:
Bug 439556 - nonnlsPlugin only does half the job ... any comments or descriptions about this change ... any comments or descriptions about this change Signed-off-by: Your Name <email@example.com>
The signoff line, and the Git Author field, must use the same email address as your Eclipse account.
Having done this, it's also a good idea to ensure that your changes are up to date with the ongoing development in the master branch. See Keeping up to date for information. Once your commit is up to date on the latest code and the fix is retested, then please push the commit to your GitHub repository. For detailed information on using Orion's Git facilities see the Orion User Guide.
Submit your changes to Gerrit
Now that Orion has moved all development to GitHub, Gerrit is no longer used to accept contributions.
Submit your changes through GitHub
Creating a pull request is the preferred method to contribute your code to Orion. If you are not quite sure how to do this, have a look at this page for a detailed description on doing so.
Once you have submitted your pull request, add a comment to the Orion bug report indicating that you have changes that you would like someone to review. Please make sure to also include a link to the PR in the bug report.
For Orion Committers
Finding bugs to review
You can locate all bugs awaiting review with the following bugzilla query. Edit this query to narrow down to specific contributors, dates, etc.
Hopefully this will get simpler in the future.
Accepting a contribution from GitHub pull request
These steps assume that the contributor sent out a valid pull request (in the following example we use the client repo, but the same steps apply for the server, node and electron repos).
- From the pull request, find the commit id.
- Use this format of URL : YourOrionServer/git/reviewRequest.html#https://github.com/contributorId/orion.client.git_contributorCommitId and paste it in a browser. If it is a server code contribution, change the orion.client.git part to orion.server.git.
- Now you are in the Orion review request page. Expand the Attach the remote to one of your existing repositories section.
- Find your Orion repository and use Add a new remote to your repository command on the right hand side.
- Now you will see a new section The commit can be found in the following repositories. Expand it and you will see the contributor's commit is there.
- Use the Open Commit link on the right hand side, which brings you to the git commit page.
- Review and compare the changes. If the code is OK, then use the Cherry-Pick command to pick it up in your active branch.
- Go to git status page and push it into your Orion remote repository.
- In the future when bug 395824 is fixed, the above steps will be simpler.
Git tips
Keeping up to date
From time to time you will want to synchronize your forked repositories with the latest changes in the repositories at Eclipse.org. To do this, we need to add a remote that points to the upstream repository.
In Orion, you can add a remote to each clone using the button on the repositories page.
In Eclipse, each clone in the Git Repositories view has a list of remotes and you can add a remote by right clicking there.
From the command line:
% git remote add upstream https://github.com/eclipse/orion.client.git % git remote add upstream https://github.com/eclipse/orion.server.git
Once complete, to verify you should see:
% cd ../orion.server/ % git remote -v origin https://github.com/ahunter-orion/orion.server.git (fetch) origin https://github.com/ahunter-orion/orion.server.git (push) upstream https://github.com/eclipse/orion.server.git (fetch) upstream https://github.com/eclipse/orion.server.git (push) % cd ../orion.client/ % git remote -v origin https://github.com/ahunter-orion/orion.client.git (fetch) origin https://github.com/ahunter-orion/orion.client.git (push) upstream https://github.com/eclipse/orion.client.git (fetch) upstream https://github.com/eclipse/orion.client.git (push)
You can now bring in the latest changes. Using the command line: First make sure we are on the master branch:
% git checkout master Switched to branch 'master'
Bring in the latest changes from both remotes:
% git fetch % git fetch upstream
% git remote update -p
Then merge into your local branch:
git merge upstream/master
You can then push the changes to GitHub:
git push
Similarly from Orion and Eclipse the above fetch, merge and push commands are available on the repositories page in Orion and from the Team menu when selecting a project in Eclipse.
Strange commit: Merge remote-tracking branch 'upstream/master'
Suppose you have your clone of a repository on GitHub and you pushed changes to master rather than working in a branch. Subsequently, when you push to your clone, you will see in your commits log:
Merge remote-tracking branch 'upstream/master'
Git is downloading the other developer's commits and then merging them into your local branch.
This merge does not break anything, but it is desirable to have a clean master branch with only commits from the original repository and a clean commit log.
To fix, you can move any old commits to a new branch and then restore your master branch to be exactly the same as upstream/master:
Create a new branch containing all your work currently in master:
% git branch my-work-done master
Then reset master to upstream's view:
% git reset --hard origin/master
Using rebase
, Git's expert mode
The Git rebase
command can help you develop against a shared branch (like master
), and keep your local branch up to date with other developers' changes, and avoid unpleasant merge commits. Rebase does it all.
Assume you have some commits in your local master branch that you haven't pushed yet, and you want to bring in changes from upstream. Do this:
% git fetch upstream % git rebase upstream/master
Effectively, rebase will set aside any commits you have in your local copy of master
, then reset master to upstream's master, then re-apply your commits on top.
You can even do this all in a single command:
% git pull --rebase origin master
("pull" is the equivalent of fetch followed by merge. "pull --rebase" is the equivalent of fetch followed by rebase.)
If a rebase runs into trouble, you can usually unroll the entire operation by doing
% git rebase --abort


text:
GR Schwarzschild Particle Energy Program Documents
This material has 3 associated documents. Select a document title to view a document's information.
Main Document
GR Schwarzschild Particle Energy Program
written by
Wolfgang Christian, Mario Belloni, and Anne Cox
educational validator:
Bethany Zach
The GR Schwarzschild Particle Energy program simulates orbits of objects around a black hole using the Schwarzschild metric. It also displays a plot of the effective potential well in which the orbiting particle resides. The user can change the orbiter's state by entering new energy and angular momentum values and dragging the marker to different positions. The default configuration is a circular orbit.
GR Schwarzschild Particle Energy is part of a suite of Open Source Physics programs that model aspects of General Relativity. It is distributed as a ready-to-run (compiled) Java archive. Double clicking the gr_schwarzschild_particle_energy.jar file will run the program if Java is installed. Other programs provide additional visualizations. They can be found by searching ComPADRE for Open Source Physics, OSP, or General Relativity.
- Download gr_schwarzschild_particle_energy.jar - 622kb Java Archive File
Last Modified May 23, 2008
Supplemental Documents (2)
GR Schwarzschild Particle Energy Documentation
A pdf document that briefly describes the GR Schwarzschild Particle Energy program. It describes how to use the gr_schwarzschild_particle_energy.jar file and contains short tutorial exercises for use with the gr_schwarzschild_particle_energy.jar file.
- Download gr_schwarzschild_particle_energy.pdf - 114kb Adobe PDF Document
Published May 23, 2008
Last Modified May 23, 2008
GR Schwarzschild Particle Energy Distribution
The materials distributed in this zip file are in support of the GR Schwarzschild Particle Energy program. This distribution contains the GR Schwarzschild Particle Energy program, documentation, exercises, and additional parameter sets (xml files)
- Download gr_schwarzschild_particle_energy_distribution.zip - 660kb Compressed File
Published May 23, 2008
Last Modified May 23, 2008
This file has previous versions.


text:
I wondered why a middle aged man (who was wearing sunglasses that were eerily similar to a pair I had at age four that had in the corner of one lens a tiny photo of Taz, actually) was throwing things at our grade as we sat in the bleachers. LEARNING STATUS: Answer never found.
Some boys reach a certain age in which they are convinced they invented anarchy, poor hygiene, and Kurt Cobain.
...And I have reached the age in which I am too often under the incorrect impression that I am wise enough to make that kind of observation.
If you, as a short person, want to get anywhere in the halls, you must push and shove. PUSH AND SHOVE.
It's great when you don't want to see someone, and they don't want to see you, so you can ignore one another in the halls on a mutual basis.
Ella and I greatly resemble Jane and Daria at lunch.
High school is fun, so far.
(No photos today, as I am currently barren of a camera. But I hate a post without visuals, so do enjoy the theme song of possibly the greatest television show about high school ever. Then get into an angry Internet debate in the comments about what is actually the greatest show, then watch me get all, "Guys, this Internet Fight of yours is so high school!" and I shall revel in how I can now say that and have a sliver of an idea of what I'm talking about.)


text:
Fall is here, and it's the ideal time of year to build a warm, crackling campfire on a chilly night. If you love to gather around a backyard fire with family and friends, it's important to understand the fire laws in your area, as well as campfire safety precautions. Prepare for your next campfire with these five things you should know to keep your fire safe and ensure everyone has an enjoyable night!
What is the Difference Between a Bonfire and a Campfire?
When it comes to building fires, people often use the terms bonfire and campfire loosely and think of them the same way. In reality, they are quite different.
The main difference is in size and purpose. A campfire is typically a small fire intended to be used for heating, cooking, to deter insects or to provide light for a campsite or picnic area. Campfires are small enough for people to sit around, giving off enough heat to keep you warm but comfortable.
On the other hand, a bonfire is much bigger. The purpose of a bonfire is typically for a celebration, a large outdoor event or as a signaling device. A bonfire is a controlled fire, but its large size makes it more hazardous. Bonfires are built in open areas like fields or meadows and away from trees or brush. Bonfires are fueled by larger items like wooden pallets and large logs, while campfires are built with small tinder or coals.
1. How to Safely Build a Campfire
No matter what type of campfire you build, safety should be top priority. Fires are often unpredictable, and all safety precautions should be taken.
Contain the Fire
If you're building a campfire at a campground, there are usually designated fire rings or grills provided. Use them to keep the fire contained and away from trees, brush and tents.
If there is no fire ring provided, there are still steps you can take to contain the campfire.
- Place rocks around the outside.
- Dig a hole six inches deep and two feet across to place the fire and pile the dirt around the fire pit.
- Clear a circle ten feet wide of grass and leaves, making it only dirt around the fire.
Check with campground management to make sure fires are allowed. If you're camping on an undeveloped site, check with the agency that administers the land, such as the U.S. Forest Service, as a campfire permit may be required.
2. How to Start a Campfire
Tools and Supplies to Bring
- Shovel
- Pail for water
- Heat-resistant gloves
Materials Needed to Start the Fire
You'll need three basic materials to start your campfire: tinder, kindling and wood. Tinder is the smallest and easiest burning materials used to get a campfire started. Tinder is dry and fluffy, which can make it a challenge to find in wet weather. It's best to bring some with you instead of counting on finding it out in the woods. Tinder can take on many forms, including:
- Wood shavings
- Wadded paper
- Strips of cardboard
- Commercial fire sticks or fire starters
- Dryer lint
- Wax
Once the tinder has caught fire, it can help ignite larger materials. The larger materials are called kindling, which typically consists of twigs or small branches. When collecting kindling, only use wood that snaps and breaks. If it bends, it is too wet to burn. Always collect all of your fire-starting materials before setting a spark, as the fire will go out quickly if you need to gather more fuel.
Now that you have the materials and supplies you need, and you've chosen a safe campfire spot, it's time to build your fire.
- Using the tinder, start a small fire with matches or a lighter.
- Once the tinder has caught fire, slowly add in pieces of kindling. Take your time when adding kindling to the tinder, as too much will smother the flames, requiring you to start over.
- Next, you can add the wood. When picturing the wood used for a campfire, many people envision large logs. However, wood for a campfire doesn't need to be bigger around than your arm. There's no need to spend a lot of time searching for dry wood; the heat of the fire will dry damp wood and then combust.
- One of the most effective ways to place your firewood is in a teepee style. With your kindling and tinder in the center of the fire ring, stand the firewood in a circle around the kindling, all meeting in the center resembling a teepee.
How to Safely Extinguish a Campfire
After you've spent an evening sitting around the campfire with family and friends, it's time to put out the flames. Here are a few simple steps you can take to ensure your fire is completely extinguished:
- Fill your pail with water and drown the campfire.
- Mix the ashes and embers with soil.
- Scrape partially burned logs to make sure the hot embers are off of them.
- Stir the embers after they are covered with water to make sure everything is wet.
- Everything should be cool to the touch before you leave the campfire. Once you've put plenty of water over the campfire and let it burn out, gently feel the fire ring, rocks around the fire and partially burned wood. If it's too hot to touch, it's too hot to leave!
3. Consider Your Environment and Surroundings
If you're thinking about building a campfire, always check the environment and weather forecast before getting started. If you hear of any of these conditions, it's better not to start the fire.
- Red Flag Warning: More appropriately known as a Fire Weather Warning, this forecast from the National Weather Service indicates that the conditions are ideal for wildfires and for fires to spread rapidly. While it's not illegal to have a campfire during a Red Flag Warning, it's a smart choice to wait to build a fire until the conditions are safer.
- Dry Air: In the fall, humidity starts to drop, and the air gets dryer, raising the risk of wildfires. In conditions like these, a crackling campfire can become a hazardous wildfire unless it is properly extinguished.
- Wind: Always be aware of the wind strength and direction when building a campfire. If the wind picks up speed and changes direction, there could suddenly be embers and ashes flying into flammable areas.
4. Safe Campfire Cooking
If you're having a backyard campfire, you'll probably end up doing a little cooking. After all, the smoke and flames can add great flavor to your meal. Whether you're planning a whole meal or just roasting marshmallows, here are some campfire safety tips for cooking!
- Cooking over an open flame can cause food to cook unevenly, leaving the inside uncooked while burning the outside. To avoid this, let the wood burn down to white hot coals and use the glowing embers.
- Turn your food every 15-20 minutes to allow it to cook evenly.
- Use a food thermometer to make sure your burgers are cooked to a minimum temperature of 160 F degrees.
- When cooking directly on hot coals, wrap food in heavy-duty aluminum foil.
- Always place hot cooking utensils and other materials a safe distance from other people and flammable items.
5. Backyard Fire Pit Safety
Even if you can't get away for a big camping trip, you can have your own mini camping trip in your backyard! First, always check that it is legal for you to have a fire outside your home. Laws vary by city and state.
Many homeowners use portable, metal fire pits or a built-in stone fire pit to build campfires in their backyard. Whether you're building a fire pit or you have a portable one, make sure it is a safe distance from your home. Just like camping in the woods, embers can fly from a fire in your backyard and come in contact with your home or garage. If you're planning a backyard fire, check with your insurance agent to find out if your homeowner's insurance policy covers this situation. It's possible that your policy could extend, and it's a good idea to find out.
Have a Carefree Fall with Farm Bureau Insurance
By taking these precautions, you're bound to have a relaxing night around the toasty campfire. If you'd like the peace of mind of knowing your home is protected from the unexpected, contact your Farm Bureau agent today.


text:
While it may be difficult to think about adding a humidifier to your Huffman home while it's still officially summer, now may be the ideal time to do so to make sure you're ready for drier air this fall and winter. Although humidity isn't usually thought of when considering indoor air quality, it should be.
Humidity plays a big role in our comfort. After all, remember the last time Huffman had a day (or week…or month) of high humidity. That's usually when you hear people saying, "It's not the heat, it's that darn humidity." On the flip side of this, air that is too dry also comes with its problems, from dry skin to a scratchy throat.
Having low humidity in your home can also mean increased static electricity, dry lips and hair, a scratchy nose, and chapped lips to name a few. Dry air leads to an increased chance of your mucous membranes drying out, making it easier for you to get a cold or develop a respiratory illness.
Your home could also be affected by the lack of a humidifier as well, as woodwork and furniture can experience splitting, separation, or warping due to the lack of humidity. You might also notice peeling wallpaper or gaps in your baseboards and another molding.
Of course, there's no reason you can't keep an eye on the humidity levels in your home, making it that much more comfortable when you walk in the door. Plus, using a humidifier can help you save energy and possibly lower your air conditioner service costs.
Having humidity under control also means you can have the thermostat set a few degrees warmer or cooler based on the season because humid air feels more comfortable. Those few degrees can make an impact on your energy bill every month as well, potentially saving you money throughout the year.
Indoor air quality isn't strictly limited to ventilation, air filtration, or air purification. Humidity plays a large role in our comfort, so why not make your air the most comfortable it can be? If you're curious as to which indoor air quality product could be ideal for your home and budget, give the experts at Air Houston Mechanical LLC a call at (832) 501-3419.
The post Humidifiers: the Unexpected Comfort Provider appeared first on Air Houston Mechanical LLC.


text:
Usually that's called "paranoia." Unless, of course, you're in one of these bakeries:
Betcha never knew someone could give you the finger while wearing a baseball mitt, now, did you?
- Related Wreckage: Passive Aggressive Cakes
When professional cakes go horribly, hilariously wrong.
Haha! "Cakes" is exactly what I would call these. Great sign!
I wonder if they also have "pies" and "doughnuts". Those are scarier than the creepy crawlies (if that's possible).
Nice...wonder what they really mean.
Dean J.
That one with the toadstools would be pretty darn cute, if there were only a fairy or an elf or something to explain the footprints...
That first one is that girl from Heroes whose eyes bleed black stuff and she kills everybody around her by making their heads asplode. But at least she's smiling now.
This is one of my favorite categories. You can just feel the mood of those decorators. But what's with the boobies with the go-go fringe?
Hmmm, I don't think I'll be ordering any "cakes" from that company. Wonder what they are really selling?
Love this blog! It makes my morning every day!
I love the fact that my 11 year old daughter laughs hysterically at the "cakes" sign. An 11 year old gets why it's wrong, but a grown-up store employee can't? At least there's hope for future generations.
Yeah nothing like a unibrow on a cookie sandwich! Mean cookies are not tasty.
WTF hahahaha look at the big cookie one... *This* you call decorating, people? That looks like it belongs on Homestar Runner or something, getting sold by Bubs at his concession stand!
And that little landscape clearly says "go jump in a lake". Ahemhem. We are on to you guys!
LOL LOL!!! THese are wonderful!
My favorite is the baseball mitt, emerging like the lotus-glove-of-Zenlike-mindfulness, and the baseball bursting forth in the middle of it like some mandala.
I am still alguhing about it.
:-D THANKS. Great way to begin the day. Lily
Cake 1 - Alice Cooper lives
Cake 3 - Geico!
Let's hope these taste better than they look.
OK, who else did see naughty cakes in the third picture?
(Hiding in shame)
OK, who else did see a naughty cakes in the third picture???
(Hiding in shame)
i HATE the random use of quotation marks!
Aww... I thought the third one(s) were cute.
But what were they thinking with the fifth? Or was it just late on Friday and they had a bag of icing left over?
Wow. Quotation mark "Cakes" ? Love the baseball glove.
oh my, that "grrr" one... what was the decorator thinking?!
Why did he roam alone? Because of those shrooms! :-D
WAIT! The one with footprints? What's with the giant mushrooms? They're like trees for something that makes such little footprints.
Loved this post! I actually liked the "go jump in a lake" cake. Or maybe I should say "cake."
Is that last one from a bakery in Milwaukee?
Anyone else notice that the 2nd cake is also labeled as a Rotissarie Chicken? It must be from the same place that makes "cakes"
OMG, I love the Gnome Death Cake. Awesome.
What is the bakery called again? Anger Issues Bakers Inc?
~Amy B
okay, now i'm paranoid. are y'all making fun of my comment yesterday when i said "cakes"?!?!
breathe. breathe. sorry. not only am i slightly paranoid, i'm a middle child. 'nuff said.
i actually like the pink and green floral trim on the first cake. too bad about the bleeding eyes. she should have that looked at.
The top one looks like Coraline's "other" birthday cake.
Oh, silly us, that's not a baseball mit and ball at all..it IS a rotisserie chicken with the giant egg it laid.
What's with the blueberry-tipped boobs in #3?
I think maybe the second to last cake is supposed to be a roller coaster. I wonder how many people will have said this already by the time the comments get moderated!
I agree Kashmir, Geico! Totally.
Hey Pagealicious, what's with the slam against Milwaukee? Milwaukeeans represent. East side till I die.
Dude, no slam against Milwaukee...I agree, Milwaukeeans (East Side!) represent! I'm just pretty sure I saw that sign (or one just like it) in a bakery window on the East Side...
oh, that second one!
I accidentally forgot the "s" in blogspot and I ended up on a bible college website...it's creepy! Why would they have the name cakewrecks?
Wow, first "Suicide Encouragement" cake I've ever seen!!
"Hey, see that body of water over there? Next to the deformed mushrooms? Go drown in it!"
The Flying Spaghetti Monster! May you be touched by his noodly appendage! I'm talking about the googly-eyed cupcakes.
The creepy little dudes with the big eyes that are allllways watching remind me of The Fry Kids from McDonalds... creepy indeed.
I see the smurf village but where are the smurfs? Oh wait, now I see...the footprints...follow them and ye shall find... :)
I would have to say that this is one the funniest posts here on cake wrecks,ever!. I love it!!. Also thank you for providing me with a laugh to start my day, every day.
OMG, the footprints one made me laugh out loud in my living room. Who thought up that design?? And how wrong is it that I want one too?
You're the best Jen!
The baseball mitt made me look twice - I thought maybe they had put a CCC on TOP of a cookie cake. The misshapen outline was very reminiscent of a dreaded CCC.
Not to go all serious on everyone, but those mushrooms really look like the poisonous Amanitas! Maybe that's why the footprints lead to the lake! So the people giving the cake were not only saying go jump in the lake, they were saying if you don't, we'll give you giant poisonous mushrooms to eat!
The one with the footprints is my favorite, lol. National Missing Children's Day, perhaps?
Oh, man...that "cakes" one really reminds me of one of my old jobs. I used to work at an Old Time Photography studio, and the owners put quotes around everything that they wanted to emphasize in their ads and price sheets. They didn't understand that it looked sarcastic. (ex: now "only" $25! it's a "deal"!)
That sign is amazing. Not only for the quotation marks, but check out that font and perspective. How creative! If you stare at it, it looks like a giant ship determined to run you over.
Taking aim at lousy advertising
Regarding Michelles find. Yikes! There is a religious site that is cakewrecks.blogpot.com !!!
Why the heck call it cake wreck? and ya gotta wonder what "Blog-pot" might mean? LOL
Anger cakes, Grrrrrrrrr!
i love the gnome one! omg! great meatloaf! =)
I also saw that the unfortunate baseball cake had been placed into a rotisserie pan. That's the second one on this site! Kind of makes you wonder about what goes on in the back rooms of the grocery stores.
Maybe the last bakery specializes in CCCs and has finally recognized the fact that they're not actually real cakes.
Maybe I'm giving them too much credit.
Word verification: abitrin, a new pain reliever designed expressly to relieve headaches brought on by poor icing and misused quotation marks
My 4 year old say the cupcakes with eyes and I qoute "that is SOOOOOOO scary." The footprint cake is "weird" and the last cookie drunken nose thing, is an elephant cookie. I was amused by her assesments of the cakes.
I was having a crappy day until I got my copy of CakeWrecks in the mall! I read it from cover to cover while my daughter napped. So hilarious. Thanks Jen!
That sign is definitely in Milwaukee, most likely East Side...looking at the big image, there is a Shepherd Express newspaper to the left of the sign. Local Milwaukee paper, usually found on the east side of town. After work I may troll the streets for that one.
in the third pic; the eyes follow you wherever you go. creepy!
The "Cakes" sign is at Peter Sciortino's Bakery at the corner of Humboldt and Brady, 6 blocks from my apartment. Come to laugh at the sign (I always do), stay for the delicious pastries. Even the macaroons are transcendent.
Psst...I think it's on Brady Street...
Oh, I LOVE misplaced quotation marks!
There's a little (tiny) family-owned "store" down the street from me that has this sign in the window:
I'm "not" making this up.
As for the little footprints cake...truth be known, I'm a little less concerned about where the little feet were going than where they CAME from.
Do we have tiny elves hiding INSIDE of our cakes, just waiting for an opportunity to come out and take a stroll across the tops?
The "always watching" cupcakes (I think that's what they are) cracked me up!
The fourth is pretty good, I think.
And no. three makes me think of The Flying Spaghetti Monser (MYBTBHNA).
Some of these cakes need an anger management class.
And... "Cakes"? Yahh...come on in and have a "Cake"...no really, its cake. Suuure it is....
What in the heck IS that cookie cake???? It just looks like the leftover icing at the end of a long shift that the wreckerator did not want to have to clean up or put back in the tub of icing.... so he/she just squeezed out all of their frustrations which ended up looking like a mouth so they put teeth and eyes on it and call it... wait, i dunno what they call it!!!! UGH!!! Well, I call it crap...
How terrifying. Who are these decorators and why do they still have jobs?
I am geeky enough that all I could think about over the first one was "Who watches the Watchcake?"
I'd buy that cookie cake in a second. Mmmmmmm..........frosting.
I love the cookies. I'm seriously tempted to make those. What's truly scary is all the icing it would take to make them. *Cringe*
Yeah...yeah, that's right. "Cakes".
I'm so glad that legalsmeagol and Sili thought the cupcakes looked like the Flying Spaghetti Monster too. First, I laughed. Then I wondered if I was the only person crazy enough to instantly think of good ol' FSM.
The footprints one... what were they thinking? "What's adorable?" "Fairies." "Alright, great, but can we make it more adorable? What's more adorable than just fairies?" "Fairy... suicide?"
He wasn't roaming alone, because you know that Jesus was carrying him...
Watching...they're always watching...I laughed pretty hard at that!!!!
I was also thinking that the Toadstools By The Lake cake should have a Smurf reference. The Smurf equivalent of "Friday The 13th"?
And "cakes"....yes the Lawyers...I'm SURE it has something to do with legal jargon and technicalities.
My theory on the first cake -
Someone started to make a simple smiley face with just two vertical lines for eyes and a curve for a mouth. Then they realized they had scaled it totally wrong, and it only occupied a small area at the center of the cake.
So they started to elaborate, adding a lower lip, dimples on the corners of the mouth, and large pupils. The mouth turned out, if not actually good, then passable. They eyes on the other hand...
Haha omg that cake with the foot prints leading to the water - that's terrible, but it made me laugh!
Having played baseball against my husband at his company picnic, I was aware that one could flip the bird inside a baseball glove.
LOVE the footprint one. I see that cake and just imagine a poor depressed woodland gnome wandering off by himself to just end it all.
Hey, the third ones down are Flying Spaghetti Monsters! He is reaching out with his noodly appendages!
They're all brilliant, always, but today that last one is especially brilliant ;)
For some reason that landscape cake remotely reminds me about Bond-film 'You Only Live Twice' and that garden in it..
Yikes. Just. Yikes.
I want that "catcher's mitt" cake for my Sister In Law. She deserves about 10 of 'em.
thanks for my laugh!
I didn't see eyes there... I saw mini boobie cakes. Ha!
I want to shop at the place where they sell the "cakes" -- quote marks seem to have replaced everything bolded and underlined. I have a client (print and web) who insists on every other phrase being bolded and underlined (and most in italics, too). I must not let him see the quotes!
I needed that laugh. Thanks!
With the footprints, I just saw an adorable little faerie-cake. I don't like to think that the faerie drowned, so I'm just going to go with swimming and right now she's submerged. Or maybe she came out of the lake and flew away, like a hatchling?
At first glance, the googly-eyes reminded me of the Fry Kids. But then I thought Geico.
wv: tinket The sound a faerie makes when she lands.
I suspect the third one--the little cakes with the googley eyes--are supposed to be the Flying Spaghetti Monster. Not the best FSM food rendition I've ever seen, but it makes it a little more comprehensible.
am I the only one that sees the Cheshire Cat in the picture right before the sign?
lol why did he have to wander? why? LOL! so funny. these "cakes" are the best thanks Jen! ur comments r just as funny as the cakes!
Hey Paigealicious!-
Yes, the sign is from Peter Sciortino's Bakery on Brady. I haven't had their "cakes" but the have the best cookies.
I "heart" Cake Wrecks, so I had to share this with you: http://www.unnecessaryquotes.com/
Haha! This is SO funny! I can take credit for the footprints cake.
... 'twas a year or two into my decorating experience and an order came through describing a cake with a small pond, miniature mushrooms and flowers and fairy footprints from the pond. Yes, indeed, the footprints are going the wrong way. I hand painted the feet making that mistake and everyone was happy with the cake and didn't notice...
I am honored to have my cake show up on this blog! It is hilarious! Thanks for a great laugh. It is never good to take yourself too seriously and this experience proves the truth of that statement!
Thank you!!!
Christy G.
My son said "EWWWW eyeball worms!" about those lovely pink iced cupcakes with the scary eyeballs.
Barnes & Noble
Borders |
A Cake Wreck is any cake that is unintentionally sad, silly, creepy, inappropriate - you name it. A Wreck is not necessarily a poorly-made cake; it's simply one I find funny, for any of a number of reasons. Anyone who has ever smeared frosting on a baked good has made a Wreck at one time or another, so I'm not here to vilify decorators: Cake Wrecks is just about finding the funny in unexpected, sugar-filled places.
Now, don't you have a photo you want to send me? ;)
We don't have any copies of Cake Wrecks for sale here, autographed or otherwise. We decided the shipping and handling costs would be too high to make it worth your while. So instead, buy your copies locally or online and then order personalized bookplates: it's cheaper, easier, and I think even looks a bit nicer.
Payments must be made through Paypal, which accepts all major credit cards. Sorry, but that means no checks or MOs or barter-based chickens.
We ship everything first class USPS, and will do our best to have your package in the mail within 2 days of your order.
Copyright 2008-, Cake Wrecks. All Rights Reserved | Privacy Policy
Endorsement Disclosure:
Purchases made through Amazon affiliate links on this blog yield a small referral fee. Go here for more details.


text: Rain Game - Sally wants to water the plants in her backyard, but it's hot and sunny outside. They need rain, and lots of it! Good thing the Cat in the Hat knows exactly where to go to get some: the rain forest! With the assistance of some toucans and the singing of howler monkeys, they explore each level of the rain forest, eventually reaching the top and the rain! No SSSweater is Better - Nick's favorite sweater is too small and he doesn't want to change it. The Cat in the Hat has a friend with the exact same problem! He brings them to meet Slyde the snake who shows Nick and Sally how he sheds his skin when it gets too small for him.


text:
WASHINGTON —At the Dublin Ministerial Council meeting of the Organization for Security and Cooperation in Europe (OSCE) on December 7, the 57 participating States of the organization agreed to pursue greater cooperation in combating corruption and fighting terrorism in the OSCE region.
"This declaration is a step toward more effective good governance programs, which will promote greater security and rule of law throughout the OSCE region. Particularly worthwhile is the declaration's emphasis on preventing criminals from transferring money and on freedom of information in public procurement transactions," said Representative Chris Smith (NJ-04), Chairman of the Commission on Security and Cooperation in Europe (U.S. Helsinki Commission). "It is only unfortunate that, for the second year in a row, the organization wasn't able to achieve necessary consensus for a declaration pertaining to human rights, such as media freedom."
"This declaration is important to the work of the OSCE because for the first time we have a comprehensive document that provides a framework for the OSCE's work in combating corruption," said Senator Ben Cardin (MD), Co-Chairman of the Commission, "and I am particularly pleased that in this declaration the participating States have acknowledged the importance of transparency in combating corruption and specifically called out the work of the Extractive Industries Transparency Initiative (EITI). I also want to thank fellow Commissioner and Commerce Assistant Secretary Michael Camuñez, who played an integral role in developing and advancing this declaration across the finish line."
"Reinforcing the OSCE's commitment to good governance and the fight against corruption is essential to attracting investment, driving economic growth, and promoting trade in the OSCE region," said Assistant Secretary of Commerce Michael Camuñez, who concurrently serves as an Executive Branch Commissioner on the U.S. Helsinki Commission. Camuñez, who has helped elevate the Commission's engagement on the Economic and Environmental Dimension of the OSCE, said "This declaration will also empower the OSCE field missions to assist participating States in their good governance commitments to help promote greater transparency and the rule of law in the region."
The declaration, formally titled, "Ministerial Council declaration on Strengthening Good Governance and Combating Corruption, Money-Laundering and the Financing of Terrorism," is one of five declarations agreed to by consensus of the participating States in Dublin. The declaration recognizes the role that good governance plays in furthering "economic growth, political stability, and security," and calls on the OSCE to play a greater role in fostering good governance through increased efforts in combating corruption and money laundering. Achieving the declaration has been a priority for the Commission and benefited from the active participation of Commissioner Camuñez in pushing forward the concept of good governance within the OSCE.


text:
Italian phpDay 2011
The Italian PHP user group GrUSP is pleased to
announce the 8th edition of the Italian phpDay
conference, taking place from May 12th to 14th, 2011 in Verona. We will
show new development traits, best-practices and success cases related to
quality, revision control, test-driven development, continuous
integration and so on. There are also talks about design, project
management, agile and various php-related technologies.
phpDay is the first historic Italian conference dedicated solely to PHP
development, technologies and management. It is aimed to IT managers,
developers and innovators. Each year it renews the opportunity to link
to new business partners.
phpDay introduces the most important
international PHP gurus to italian
and european developers. Tree tracks, three days of talks and workshops:
you can learn best-practices, good methodologies, case histories about
quality assurance, and have a broader view on development and innovation
with PHP.


text:
Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/UserGuide/JPA/Basic JPA Development/Querying/JPQL
EclipseLink JPA
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
Native API
The Java Persistence Query Language (JPQL) is the query language defined by JPA. JPQL is similar to SQL, but operates on objects, attributes and relationships instead of tables and columns. JPQL can be used for reading (SELECT), as well as bulk updates (UPDATE) and deletes (DELETE). JPQL can be used in a NamedQuery (through annotations or XML) or in dynamic queries using the EntityManager createQuery() API.
For more information, see Chapter 4 "Query Language" in the JPA Specification.
Select Queries
Select queries can be used to read objects from the database. Select queries can return a single object or data element, a list of objects or data elements, or an object array of multiple objects and data.
Select query examples
// Query for a List of objects. Query query = em.createQuery("Select e FROM Employee e WHERE e.salary > 100000"); List<Employee> result = query.getResultList(); // Query for a single object. Query query = em.createQuery("Select e FROM Employee e WHERE e.id = :id"); query.setParameter("id", id); Employee result2 = (Employee)query.getSingleResult(); // Query for a single data element. Query query = em.createQuery("Select MAX(e.salary) FROM Employee e"); BigDecimal result3 = (BigDecimal)query.getSingleResult(); // Query for a List of data elements. Query query = em.createQuery("Select e.firstName FROM Employee e"); List<String> result4 = query.getResultList(); // Query for a List of element arrays. Query query = em.createQuery("Select e.firstName, e.lastName FROM Employee e"); List<Object[]> result5 = query.getResultList();
SELECT Clause
The SELECT clause can contain object expressions, attribute expressions, functions, sub-selects, constructors and aggregation functions.
Aggregation functions
Aggregation functions can include summary information on a set of objects. These include MIN, MAX, AVG, SUM, COUNT. These functions can be used to return a single result, or can be used with a GROUP BY to return multiple results.
SELECT COUNT(e) FROM Employee e
SELECT MAX(e.salary) FROM Employee e
The NEW operator can be used with the fully qualified class name to return data objects from a JPQL query. These will not be managed objects, and the class must define a constructor that matches the arguments of the constructor and their types. Constructor queries can be used to select partial data or reporting data on objects, and get back a class instance instead of an object array.
SELECT NEW com.acme.reports.EmpReport(e.firstName, e.lastName, e.salary) FROM Employee e
FROM Clause
The FROM clause defines what is being queried. A typical FROM clause will contain the entity name being queried and assign it an alias.
SELECT e FROM Employee e
JPQL allows for multiple root level objects to be queried. Caution should be used when doing this, as it can result in Cartesian products of the two table. The WHERE or ON clause should ensure the two objects are joined in some way.
SELECT e, a FROM Employee e, MailingAddress a WHERE e.address = a.address
The entity name used in JPQL comes from the name attribute of the @Entity annotation or XML. It defaults to the simple entity class name. EclipseLink also allows for the fully qualified class name of the entity to be used (as of EclipseLink 2.4).
SELECT e FROM com.acme.Employee e
A JOIN clause can also be used in the FROM clause. The JOIN clause allows any of the object's relationships to be joined into the query so they can be used in the WHERE clause. JOIN does not mean the relationships will be fetched, unless the FETCH option is included.
SELECT e FROM Employee e JOIN e.address a WHERE a.city = :city
JOIN can be used with OneToOne, ManyToOne, OneToMany, ManyToMany and ElementColleciton mappings. When used with a collection relationship you can join the same relationship multiple times to query multiple independent values.
SELECT e FROM Employee e JOIN e.projects p JOIN e.projects p2 WHERE p.name = :p1 AND p2.name = :p2
The FETCH option can be used on a JOIN to fetch the related objects in a single query. This avoids additional queries for each of the object's relationships, and ensures that the relationships have been fetched if they were LAZY. EclipseLink also supports batch fetching through query hints.
SELECT e FROM Employee e JOIN FETCH e.address
JOIN FETCH normally does not allow an alias, but as of EclipseLink 2.4 an alias is allowed. The alias should be used with caution, as it can affect how the resulting objects are built. Objects should normally always have the same data, no matter how they were queried, this is important for caching and consistency. This is only an issue if the alias is used in the WHERE clause on a collection relationship to filter the related objects that will be fetched. This should not be done, but is sometimes desirable, in which case the query should ensure it has been set to BYPASS the cache.
SELECT e FROM Employee e JOIN FETCH e.address a ORDER BY a.city
By default all joins in JPQL are INNER joins. This means that results that do not have the relationship will be filtered from the query results. To avoid this, a join can be defined as an OUTER join using the LEFT options.
SELECT e FROM Employee e LEFT JOIN e.address a ORDER BY a.city
The join condition used for a join comes from the mapping's join columns. This means that the JPQL user is normally free from having to know how every relationship is joined. In some cases it is desirable to append additional conditions to the join condition, normally in the case of outer joins. This can be done through the ON clause. The ON clause is defined in the JPA 2.1 draft, and is supported in EclipseLink 2.4. EclipseLink also supports usage of the ON clause between two root level objects.
SELECT e FROM Employee e LEFT JOIN e.address ON a.city = :city
SELECT e FROM Employee e LEFT JOIN MailingAddress a ON e.address = a.address
For INNER joins EclipseLink will normally append the join condition to the WHERE clause, but this can be configured in the DatabasePlatform.
Sub-selects in FROM clause
As of EclipseLink 2.4, sub-selects are supported in the FROM clause. This requires that the database supports this functionality.
SELECT e, c.city FROM Employee e, (SELECT DISTINCT a.city FROM Address a) c WHERE e.address.city = c.city
ORDER BY clause
ORDER BY allows the ordering of the results to be specified. Multiple values can be ordered, either ascending (ASC) or descending (DESC). EclipseLink allows functions, sub-selects and other operations in the ORDER BY clause. EclipseLink allows objects expressions to be used in the ORDER BY. In the case of entity objects, they are ordered by their Id, in case of embeddable objects, they are ordered by all of their fields. EclipseLink (as of 2.4) also allows for NULL ordering to be specified (either FIRST or LAST).
SELECT e FROM Employee e ORDER BY e.lastName ASC, e.firstName, ASC
SELECT e FROM Employee e ORDER BY UPPER(e.lastName)
SELECT e FROM Employee e LEFT JOIN e.manager m ORDER BY m.lastName NULLS FIRST
SELECT e FROM Employee e ORDER BY e.address
GROUP BY Clause
GROUP BY allows for summary information to be computed on a set of objects. GROUP BY is normally used in conjunction with aggregation functions. EclipseLink supports using objects, functions and sub-selects in the GROUP BY clause.
SELECT AVG(e.salary), e.address.city FROM Employee e GROUP BY e.address.city
SELECT AVG(e.salary), e.address.city FROM Employee e GROUP BY e.address.city ORDER BY AVG(e.salary)
SELECT e, COUNT(p) FROM Employee e LEFT JOIN e.projects p GROUP BY e
HAVING Clause
The HAVING clause allows for the results of a GROUP BY to be filtered. EclipseLink supports using comparisons, objects, functions and sub-selects in the HAVING clause.
SELECT AVG(e.salary), e.address.city FROM Employee e GROUP BY e.address.city HAVING AVG(e.salary) > 100000
EclipseLink supports UNION, INTERSECT and EXCEPT operations (as of 2.4). UNION allows the results of two queries with equivalent result structures to be combined into a single query. The unique results from both queries will be returned. If the ALL option is used, then results found in both queries will be duplicated.
INTERSECT returns only the results that are found in both queries. EXCEPT removes the results from the second query from the results from the first query.
The JPA spec does not support union operations.
SELECT MAX(e.salary) FROM Employee e WHERE e.address.city = :city1 UNION SELECT MAX(e.salary) FROM Employee e WHERE e.address.city = :city2
SELECT e FROM Employee e JOIN e.phones p WHERE p.areaCode = :areaCode1 INTERSECT SELECT e FROM Employee e JOIN e.phones p WHERE p.areaCode = :areaCode2
SELECT e FROM Employee e EXCEPT SELECT e FROM Employee e WHERE e.salary > e.manager.salary
WHERE Clause
The WHERE clause is normally the main part of the query as it defines the conditions that filter what is returned. The WHERE clause can use any comparison operation, logical operation, functions, attributes, objects, and sub-selects. The comparison operations include =, <, >, <=, >=, <>, LIKE, BETWEEN, IS NULL, and IN. NOT can also be used with any comparison operation (NOT LIKE, NOT BETWEEN, IS NOT NULL, NOT IN). The logical operations include AND, OR, and NOT.
EclipseLink also supports the REGEXP operation to perform regular expression comparisons (requires database to support regular expressions). EclipseLink allows for functions and sub-selects to be used with any operation.
Operation | Description | Example |
= | equal | e.firstName = 'Bob' |
< | less than | e.salary < 100000 |
> | greater than | e.salary > :sal |
<= | less than or equal | e.salary <= 100000 |
>= | greater than or equal | e.salary >= :sal |
LIKE | evaluates if the two string match, '%' and '_' are valid wildcards, and ESCAPE character is optional | e.firstName LIKE 'A%' OR e.firstName NOT LIKE '%._%' ESCAPE '.' |
BETWEEN | evaluates if the value is between the two values | e.firstName BETWEEN 'A' AND 'C' |
IS NULL | compares the value to null, databases may not allow or have unexpected results when using = with null | e.endDate IS NULL |
IN | evaluates if the value is contained in the list | e.firstName IN ('Bob', 'Fred', 'Joe') |
The IN operation allows for a list of values or parameters, a single list parameter, or a sub-select.
e.firstName IN (:name1, :name2, :name3) e.firstName IN (:name1) e.firstName IN :names e.firstName IN (SELECT e2.firstName FROM Employee e2 WHERE e2.lastName = 'Smith')
A sub-select can be used with any operation provided it returns a single value, or if the ALL or ANY options are used. ALL indicates the operation must be true for all elements returned by the sub-select, ANY indicates the operation must be true for any of the elements returned by the sub-select.
e.firstName = (SELECT e2.firstName FROM Employee e2 WHERE e2.id = :id) e.salary < (SELECT e2.salary FROM Employee e2 WHERE e2.id = :id) e.firstName = ANY (SELECT e2.firstName FROM Employee e2 WHERE e.id <> e.id) e.salary <= ALL (SELECT e2.salary FROM Employee e2)
EclipseLink allows the =, <>, IS NULL, IS NOT NULL, IN and NOT IN operations on objects. If IN is used on an object and the object has a composite Id, this requires the database to support nested IN lists.
e.manager = e2.manager e.manager = :manager e.manager <> :manager e.manager IS NULL e.manager IS NOT NULL e.manager IN (SELECT e2 FROM Employee e2 WHERE SIZE(e2.managedEmployees) < 2) e.manager NOT IN (:manager1, :manager2)
Update Queries
You can perform bulk update of entities with the UPDATE statement. This statement operates on a single entity type and sets one or more single-valued properties of the entity subject to the condition in the WHERE clause. Update queries provide an equivalent to the SQL UPDATE statement, but with JPQL conditional expressions.
Update queries do not allow joins, but do support sub-selects. OneToOne and ManyToOne relationships can be traversed in the WHERE clause. Collection relationships can still be queried through using an EXISTS in the WHERE clause with a sub-select. Update queries can only update attributes of the object or its embeddables, its relationships cannot be updated. Complex update queries are dependent on the database's update support, and may make use of temp tables on some databases.
Update queries should only be used for bulk updates, regular updates to objects should be made by using the object's set methods within a transaction and committing the changes.
Update queries return the number of modified rows on the database (row count).
This example demonstrates how to use an update query to give employees a raise. The WHERE clause contains the conditional expression.
Update query example
Query query = em.createQuery("UPDATE Employee e SET e.salary = 60000 WHERE e.salary = 50000"); int rowCount = query.executeUpdate();
The persistence context is not updated to reflect results of update operations. If you use a transaction-scoped persistence context, you should either execute the bulk operation in a transaction all by itself, or be the first operation in the transaction. That is because any entity actively managed by the persistence context will remain unaware of the actual changes occurring at the database level.
The objects in the shared cache that match the update query will be invalidated to ensure subsequent persistence contexts see the updated data.
Delete Queries
You can perform bulk removal of entities with the DELETE statement. Delete queries provide an equivalent to the SQL DELETE statement, but with JPQL conditional expressions.
Delete queries do not allow joins, but do support sub-selects. OneToOne and ManyToOne relationships can be traversed in the WHERE clause. Collection relationships can still be queried through using an EXISTS in the WHERE clause with a sub-select. Complex delete queries are dependent on the database's delete support, and may make use of temp tables on some databases.
Delete queries should only be used for bulk deletes, regular deletes to objects should be performed through calling the EntityManager remove() API.
Delete queries return the number of deleted rows on the database (row count).
This example demonstrates how to use a delete query to remove all employees who are not assigned to a department. The WHERE clause contains the conditional expression.
Delete query example
Query query = em.createQuery("DELETE FROM Employee e WHERE e.department IS NULL"); int rowCount = query.executeUpdate();
Note: Delete queries are polymorphic: any entity subclass instances that meet the criteria of the delete query will be deleted. However, delete queries do not honor cascade rules: no entities other than the type referenced in the query and its subclasses will be removed, even if the entity has relationships to other entities with cascade removes enabled. Delete queries will delete the rows from join and collection tables.
The persistence context is not updated to reflect results of delete operations. If you use a transaction-scoped persistence context, you should either execute the bulk operation in a transaction all by itself, or be the first operation in the transaction. That is because any entity actively managed by the persistence context will remain unaware of the actual changes occurring at the database level.
The objects in the shared cache that match the delete query will be invalidated to ensure subsequent persistence contexts do not see the removed objects.
JPA defines named parameters, and positional parameters. Named parameters can be specified in JPQL using the syntax :<name>. Positional parameters can be specified in JPQL using the syntax ? or ?<position>. Positional parameters start at position 1 not 0.
Named parameter query example
Query query = em.createQuery("SELECT e FROM Employee e WHERE e.firstName = :first and e.lastName = :last"); query.setParameter("first", "Bob"); query.setParameter("last", "Smith"); List<Employee> = query.getResultList();
Positional parameter query example
Query query = em.createQuery("SELECT e FROM Employee e WHERE e.firstName = ? and e.lastName = ?"); query.setParameter(1, "Bob"); query.setParameter(2, "Smith"); List<Employee> = query.getResultList();
Literal values can be in-lined in JPQL for standard Java types. In general it is normally better to use parameters instead of in-lining values. In-lined arguments will prevent the JPQL from benefiting from the EclipseLink's JPQL parser cache, and can potentially make the application vulnerable to JPQL injections attacks.
Each Java types defines its own in-lining syntax:
String - '<string>'
SELECT e FROM Employee e WHERE e.name = 'Bob'
- To define a ' (quote) character in a string, the quote is double quoted, i.e.
- To define a ' (quote) character in a string, the quote is double quoted, i.e.
Integer - +|-<digits>
SELECT e FROM Employee e WHERE e.id = 1234
Long - +|-<digits>L
SELECT e FROM Employee e WHERE e.id = 1234L
Float - +|-<digits>.<decimale><exponent>F
SELECT s FROM Stat s WHERE s.ratio > 3.14F
Double - +|-<digits>.<decimale><exponent>D
SELECT s FROM Stat s WHERE s.ratio > 3.14e32D
Boolean - TRUE | FALSE
SELECT e FROM Employee e WHERE e.active = TRUE
Date - {d'yyyy-mm-dd'}
SELECT e FROM Employee e WHERE e.startDate = {d'2012-01-03'}
Time - {t'hh:mm:ss'}
SELECT e FROM Employee e WHERE e.startTime = {t'09:00:00'}
Timestamp - {ts'yyyy-mm-dd hh:mm:ss.nnnnnnnnn'}
-SELECT e FROM Employee e WHERE e.version = {ts'2012-01-03 09:00:00.000000001'}
Enum - package.class.enum
SELECT e FROM Employee e WHERE e.gender = org.acme.Gender.MALE
null - NULL
UPDATE Employee e SET e.manager = NULL WHERE e.manager = :manager
JPQL supports several database functions. These functions are database independent in name and syntax, but require database support. If the database supports an equivalent function or different syntax the standard JPQL function is supported, if the database does not provide any way to perform the function, then it is not supported. For mathematical functions (+, -, /, *) BEDMAS rules apply.
In EclipseLink's JPQL support functions can be used in the SELECT, WHERE, ORDER BY, GROUP BY and HAVING clauses, as well as inside other functions, with comparison operators, and in constructors.
EclipseLink provides support for several functions beyond the JPA spec. EclipseLink also supports calling specific database functions through FUNCTION, FUNC, and OPERATOR.
Function | Description | Example |
- | subtraction | e.salary - 1000 |
+ | addition | e.salary + 1000 |
* | multiplication | e.salary * 2 |
/ | division | e.salary / 2 |
ABS | absolute value | ABS(e.salary - e.manager.salary) |
CASE | defines a case statement | CASE e.STATUS WHEN 0 THEN 'active' WHEN 1 THEN 'consultant' ELSE 'unknown' END |
COALESCE | evaluates to the first non null argument value | COALESCE(e.salary, 0) |
CONCAT | concatenates two or more string values | CONCAT(e.firstName, ' ', e.lastName) |
CURRENT_DATE | the current date on the database | CURRENT_DATE |
CURRENT_TIME | the current time on the database | CURRENT_TIME |
CURRENT_TIMESTAMP | the current date-time on the database | CURRENT_TIMESTAMP |
LENGTH | the character/byte length of the character or binary value | LENGTH(e.lastName) |
LOCATE | the index of the string within the string, optionally starting at a start index | LOCATE('-', e.lastName) |
LOWER | convert the string value to lower case | LOWER(e.lastName) |
MOD | computes the remainder of dividing the first integer by the second | MOD(e.hoursWorked / 8) |
NULLIF | returns null if the first argument to equal to the second argument, otherwise returns the first argument | NULLIF(e.salary, 0) |
SQRT | computes the square root of the number | SQRT(o.RESULT) |
SUBSTRING | the substring from the string, starting at the index, optionally with the substring size | SUBSTRING(e.lastName, 0, 2) |
TRIM | trims leading, trailing, or both spaces or optional trim character from the string | TRIM(TRAILING FROM e.lastName), TRIM(e.lastName), TRIM(LEADING '-' FROM e.lastName) |
UPPER | convert the string value to upper case | UPPER(e.lastName) |
Function | Description | Example |
CAST | casts the value to the database type (as of 2.4) | CAST(e.salary NUMERIC(10,2)) |
EXTRACT | extracts the date part from the date/time value (as of 2.4) | EXTRACT(YEAR FROM e.startDate) |
REGEXP | evaluates if the string matches the regular expression (as of 2.4) | e.lastName REGEXP '^Dr\.*' |
Special Operators
JPQL defines several special operators that are not database functions, but have special meaning in JPQL. These include INDEX, KEY, SIZE, IS EMPTY, TYPE, FUNCTION and TREAT. EclipseLink (as of 2.4) also defines several special functions FUNC, OPERATOR, SQL and COLUMN.
Function | Description | Example |
INDEX | the index of the ordered List element, only supported with @OrderColumn | SELECT toDo FROM Employee e JOIN e.toDoList toDo WHERE INDEX(toDo) = 1 |
KEY | the key of the Map element | SELECT p FROM Employee e JOIN e.priorities p WHERE KEY(p) = 'high' |
SIZE | the size of the collection relationships, this evaluates to a sub-select | SELECT e FROM Employee e WHERE SIZE(e.managedEmployees) < 2 |
IS EMPTY, IS NOT EMPTY | evaluates to true if the collection relationship is empty, this evaluates to a sub-select | SELECT e FROM Employee e WHERE e.managedEmployees IS EMPTY |
MEMBER OF, NOT MEMBER OF | evaluates to true if the collection relationship contains the value, this evaluates to a sub-select | SELECT e FROM Employee e WHERE 'write code' MEMBER OF e.responsibilities |
TYPE | the inheritance discriminator value | SELECT p FROM Project p WHERE TYPE(p) = LargeProject |
TREAT | treat (cast) the object as its subclass value (JPA 2.1 draft) | SELECT e FROM Employee JOIN TREAT(e.projects AS LargeProject) p WHERE p.budget > 1000000 |
FUNCTION | call a database function (JPA 2.1 draft) | SELECT p FROM Phone p WHERE FUNCTION('TO_NUMBER', p.areaCode) > 613 |
EclipseLink special operators
EclipseLink defines several special JPQL operators that allow performing database operations that are not possible in basic JPQL. These include FUNC, OPERATOR, SQL and COLUMN.
FUNC allows for a database function to be call from JPQL. It allows calling any database functions not supported directly in JPQL, and calling user or library specific functions. FUNC is database specific, in that it does not translate the function call in any way to support different databases as other JPQL functions do. FUNC can only be used to call functions with normal syntax, functions that require special syntax cannot be called with FUNC. FUNC has been replaced by FUNCTION in JPA 2.1, so FUNCTION should be used as of EclipseLink 2.4.
FUNC examples
SELECT p FROM Phone p WHERE FUNC('TO_NUMBER', e.areaCode) > 613
SELECT FUNC('YEAR', e.startDate) AS YEAR, COUNT(e) FROM Employee e GROUP BY YEAR
FUNC Oracle Spatial examples
The following examples show how to use FUNC with Oracle Spatial queries:
SELECT a FROM Asset a, Geography geo WHERE geo.id = :id AND a.id IN :id_list AND FUNC('ST_INTERSECTS', a.geometry, geo.geometry) = 'TRUE'
SELECT s FROM SimpleSpatial s WHERE FUNC('MDSYS.SDO_RELATE', s.jGeometry, :otherGeometry, :params) = 'TRUE' ORDER BY s.id ASC
OPERATOR allows for any EclipseLink operator to be called. EclipseLink supports many database functions using standard operator names that are then translated to different databases. EclipseLink operators are supported on any database that has an equivalent function (or set of functions). The EclipseLink ExpressionOperator clas can be used to allow a DatabasePlatform to override an operator, or define custom operators. OPERATOR is similar to FUNC, but allows the function to be database independent, and allows calling functions that require special syntax. OPERATOR requires EclipseLink 2.4.
The supported EclipseLink operators include:
OPERATOR examples
SELECT e FROM Employee e WHERE OPERATOR('ExtractXml', e.resume, '@years-experience') > 10
SQL allows for the usage and integration of SQL within JPQL. SQL includes the SQL string to inline into the JPQL and the arguments to translate into the SQL string. The '?' character is used to define parameters within the SQL that are translated from the SQL function arguments. SQL allows for the calling of database functions with non standard syntax, the embedding of SQL literals, and performing any other SQL operations within JPQL. The SQL function offers an alternative to using native SQL queries just because one part of the query requires something that is not supported in JPQL. Now JPQL can still be used for the query, and the SQL function used for the SQL specific parts. SQL requires EclipseLink 2.4.
SQL examples
SELECT p FROM Phone p WHERE SQL('CAST(? AS CHAR(3))', e.areaCode) = '613'
SELECT SQL('EXTRACT(YEAR FROM ?)', e.startDate) AS YEAR, COUNT(e) FROM Employee e GROUP BY YEAR
SELECT e FROM Employee e ORDER BY SQL('? NULLS FIRST', e.startDate)
SELECT e FROM Employee e WHERE e.startDate = SQL('(SELECT SYSDATE FROM DUAL)')
COLUMN allows access to unmapped columns in an object's table. This can be used to access foreign key columns, inheritance discriminators, or primitive columns such as ROWID. COLUMN can also be used in JPQL fragments inside the @AdditionalCriteria annotation. COLUMN requires EclipseLink 2.4.
COLUMN examples
SELECT e FROM Employee e WHERE COLUMN('MANAGER_ID', e) = :id
SELECT e FROM Employee e WHERE COLUMN('ROWID', e) = :id
TABLE allows access to unmapped tables. This can be used to access join, collection, history, auditing, or system tables for use in JPQL queries. TABLE requires EclipseLink 2.4.
TABLE example
SELECT e, a.LAST_UPDATE_USER FROM Employee e, TABLE('AUDIT') a WHERE a.TABLE = 'EMPLOYEE' AND a.ROWID = COLUMN('ROWID', e)
EclipseLink Extensions (EQL)
EclipseLink provides many extensions to the standard JPA JPQL. These extensions provide access to additional database features many of which are part of the SQL standard, provide access to native database features and functions, and provide access to EclipseLink specific features. EclipseLink JPQL extensions are referred to as the EclipseLink Query Language (EQL).
EclipseLink's JPQL extensions include:
- Less restrictions than JPQL, allows sub-selects and functions within operations such as LIKE, IN, ORDER BY, constructors, functions etc.
- Allow != in place of <>
- FUNC operation to call database specific functions (now FUNCTION in JPA 2.1)
- TREAT operation to downcast related entities with inheritance
- OPERATOR operation to call EclipseLink database independent functions (EL 2.4)
- SQL operation to mix SQL with JPQL (EL 2.4)
- CAST and EXTRACT functions (EL 2.4)
- REGEXP function for regular expression querying (EL 2.4)
- Usage of sub-selects in the SELECT and FROM clause (EL 2.4)
- ON clause support for defining JOIN and LEFT JOIN conditions (EL 2.4)
- Joins between independent entities (EL 2.4)
- Usage of an alias on a JOIN FETCH (EL 2.4)
- COLUMN operation to allow querying on non mapped columns (EL 2.4)
- TABLE operation to allow querying on non mapped tables (EL 2.4)
- UNION, INTERSECT, EXCEPT support (EL 2.4)
- Usage of object variables in =, <>, IN, IS NULL, and ORDER BY


text:
Democrats lost no time in attacking the budget plan House Republicans introduced Tuesday. The plan saves money by overhauling Medicare, but Democrats argue it will destroy the program.
One of the Democrats leading the charge is Vice President Joe Biden. Taking on the role of candidate, Biden was in Coconut Creek, Fla., giving the second in what he promises will be a series of campaign speeches challenging the Republicans.
There are few places in Florida more welcoming to Democrats than Wynmoor Village, a large retirement community populated largely by people from the Northeast. Residents say there are a few closet Republicans, but more independents.
"I'm worried about Medicare for our children, not for me," one independent, Ron Goldberg, said. "I'm already there. But will it be there for our kids and our grandkids? That's the problem."
'Make No Mistake'
That's an idea House Republicans are hoping to capitalize on with their budget. Crafted by Paul Ryan, the House Budget Committee chairman, it seeks to save more than $200 billion from Medicare over the next 10 years by moving future generations into privately run health plans.
When Ryan first proposed the idea in last year's budget, it was panned. This year's version has some important changes: Future seniors would have the option of retaining traditional Medicare. Also, because it builds on ideas Ryan developed with Democratic Sen. Ron Wyden, Republicans are able to claim it's bipartisan.
But Biden told his audience of seniors not to believe it.
"Make no mistake about it. If the Republicans in Congress, and their amen corner of Romney, Santorum and Gingrich — if any one of them get ... the keys to the White House — I promise you, you will see Medicare ended as you know it," he said.
Biden says there's no question the baby boom generation — now moving into retirement age — provides real challenges for Social Security, with the number of seniors doubling by 2040. Biden says faced with those challenges, the nation has a choice. Republicans and Democrats can work together, as they have in the past.
"Or ... are we going to use these challenges as a pretense to do what so many have been trying to do from the beginning: dismantle both of these programs?" he said.
That's a message Democrats expect to take to the general election in November, both in the race for the White House and in congressional campaigns.
On Message
Even before House Republicans voted to adopt the Ryan budget, the Democratic Congressional Campaign Committee rolled out a website and started making robocalls targeting 41 vulnerable House Republicans.
One of them is a first-term congressman from Orlando, Fla., Daniel Webster.
"I think the detractors from this budget are thinking about the next election," he says. "I think the Republicans in Congress are thinking about the next generation."
Webster says the Ryan budget, with its Medicare overhaul, is an important step toward a balanced budget.
Politico reported Thursday on a briefing given to House Republicans to help them sell the plan to constituents. Call it "bipartisan," they were told, and use phrases like "fix Medicare and keep it from going bankrupt."
In describing the Medicare overhaul, Webster stuck to the script.
"It's a bipartisan Medicare proposal that strengthens it and saves it actually from extinction," he said. "And if we don't do something ... it's going to go bankrupt. However, fixing it now is the key."
Webster is expected to be in a tight race this year. He says the key will be winning over independents. That means reaching people like Wynmoor village resident Arlene Grossman, an independent.
"Of course he said what the seniors want to hear," she said after Biden spoke. "But I think it's true. And the other side does not care as much about the seniors ... because they are — represent wealthy Americans."
It's a message right out of the Obama-Biden playbook.
Copyright 2021 NPR. To see more, visit https://www.npr.org.


text:
If you are seeking your local authority in Retractable Awning in Fox Valley, IL, check out Home Retractable Awnings. We will respond to your concerns, make it easier to satisfy your budget objectives, and ensure that you have the essential details to make the best decisions for the project. You are able to take advantage of our years of experience. We will assist you to get moving on the right track whenever you contact 888-320-3977. We're available to accept your phone call, so give us a call today.
Another thing consumers really enjoy about us is that we're a local business. As a local Fox Valley Retractable Awning business, we truly appreciate helping members of the community and establishing relationships. Additionally, our experts choose to give back to the area by assisting with fundraising efforts, and many of our organization's pros are really active in volunteering in order to help this area continue to be so wonderful!
Here at Home Retractable Awnings, we are staffed with a crew of highly-trained and experienced professionals because we feel you're paying for both our business' products and expertise. We've always been amazed at the number of folks who start a Fox Valley, Wyoming Retractable Awning company without having the ability to explain the different benefits associated with distinct products. If you would like do business with pros who actually fully understand their product, be sure to call us at 888-320-3977 as soon as possible!
In an attempt to save money, it's not unusual to see individuals try to complete the venture themselves, but it usually doesn't go as planned. To obtain ideal results, you'll have to have access to costly Retractable Awning equipment, and you'll waste a great deal of valuable spare time during the endeavor. Therefore, you're better off to hire a specialist because it'll save you time and money.
Think about it, there are tons of businesses to select from in the Retractable Awning marketplace, but only one company is truly going to earn your business. We understand this, which is why we place such a large emphasis on ensuring that we deliver exactly what the customer needs- a wide array of products, rapid service and a consultative rather than selling approach. Therefore, consumers enjoy doing business with our experts, and they also feel extremely comfortable sending our professionals plenty of referrals.
You may not be excessively thrilled today, but that doesn't mean we're going to worsen things by acting like we couldn't care less about working to earn your business. Instead, our Retractable Awning specialists will make you feel like you're our preferred consumer as they guide you through the process in a way that is very laid-back.


text:
Today's post is a sort of poll: what do you think of the new size of the photos here? Like it? Not so much? Couldn't care less? Please, let me know – I can't decide this one on my own. :)
You'll find a magazine article featuring yours truly here (page 4) – it is written in Portuguese and I'm sorry for that, but at least you'll be able to see who the girl that keeps asking you for votes and opinions is. :)
White chocolate and vanilla fudge cakes
from Donna Hay magazine
150g white chocolate, chopped
100g unsalted butter, chopped
½ cup (120ml) whole milk
1/3 cup + ½ tablespoon (73g) caster sugar
1 vanilla bean, split lengthwise, seeds scraped with the back of a knife
1 egg
¼ cup (35g) self raising flour
½ cup + ½ tablespoon (75g) all purpose flour
200g white chocolate, extra
Preheat the oven to 160°C/320°F. Butter well twelve 1/3 cup (80ml) capacity mini Bundt pans*.
Place the chocolate, butter, milk, sugar and vanilla seeds in a medium saucepan over low heat and stir until melted and smooth. Allow to cool completely. Stir in the egg.
Sift flours in a large bowl and add the chocolate mixture. Stir with a wooden spoon until smooth. Spoon the mixture into prepared pans. Place on a baking sheet and bake for 15 minutes or until cooked when tested with a skewer. Allow to cool for 5 minutes then carefully unmold onto a wire rack. Cool completely.
Place the extra chocolate in a small heatproof bowl and melt over a saucepan of barely simmering water, stirring occasionally, until completely melted and smooth. Drizzle the cakes with the melted chocolate and set aside until firm.
* I made slightly larger cakes, using four 1 cup (240ml) capacity Bundt pans
Makes 12


text:
LYON, France – Nearly 30 tonnes of cocaine, heroin and marijuana with an estimated value of USD 822 million have been seized in an INTERPOL-led operation targeting the maritime trafficking of drugs and illicit firearms by organized crime groups across Central America and the Caribbean.
Operation Lionfish, coordinated by INTERPOL's Regional Bureau for Central America in San Salvador (El Salvador) with support from the Drugs and Criminal Organizations unit at the General Secretariat headquarters, involved some 34 countries and territories and also resulted in 142 arrests, the seizure of 15 vessels, eight tonnes of chemical precursors, 42 guns and approximately USD 170,000 in cash.
Two operational coordination units, at the Regional Bureau in El Salvador and the Command Centre of the French West Indies Coastguard in Fort de France, Martinique provided real-time support for information exchange and conducting checks against INTERPOL's global databases.
Run in partnership with the World Customs Organization (WCO) and the Caribbean Customs Law Enforcement Council (CCLEC) with support from the French Coastguard, the Royal Canadian Mounted Police (RCMP) and Europol, the joint law enforcement operation was also aimed at enhancing information sharing at the regional and international levels in order to improve intelligence on modus operandi, routes and the identification of organized crime structures and key players.
"The value of operations such as Lionfish is not just about the arrests and seizures, it is also about INTERPOL's support to its member countries to strengthen national and regional law enforcement cooperation in our continued efforts to target organized crime networks behind the trafficking," said Mr O'Connell, INTERPOL's Director of Operational Support.
"It is important that there is a structure in place to build on these results, and using INTERPOL's global services, frontline officers have the tools they need to do their job which is to identify and arrest criminals," added Mr O'Connell.
The operation was coordinated in response to growing evidence of the organized crime in the trafficking of drugs and firearms in the Central America and Caribbean regions due to its strategic location, with a significant increase in the number of cocaine seizures by local authorities, and a reported increase in violent crime.
"This operation demonstrates the importance of INTERPOL's global tools and network, and the added value of Regional Bureaus in supporting member countries in their fight against organized crime and drug trafficking," said Saul Hernandez Lainez, head of INTERPOL's Regional Bureau in San Salvador.
"INTERPOL Ottawa's participation in this operation is key, because disrupting this activity is not only critical for the source and transit countries of these drugs and weapons, but also for the destination countries, such as Canada," said Bob Paulson, RCMP Commissioner and INTERPOL Executive Committee Delegate for the Americas. "Our strong partnership with INTERPOL continues to be crucial to combating these kinds of real threats to Canada and our neighbours."
Describing the operation as 'unprecedented' in its geographical scope, CCLEC Permanent Secretary Paul Hilaire said: "CCLEC will certainly build on the achievements and lessons learned during this operation, and stands ready to consider future initiatives making our globe more secure with its international and regional partners."
Supported by the Department of Foreign Affairs and International Trade, Canada (DFAIT), Operation Lionfish which ran between 27 May and 10 June was held under the banner of INTERPOL's Integrated Border Management Task Force and is part of INTERPOL's Capacity Building Programme on Organized Crime for the Americas.
Under this programme, some 161 officers from 36 countries have already undergone specialist training with events held in Panama, Jamaica, Mexico, Guatemala, Dominican Republic and The Bahamas.
INTERPOL's Director of Capacity Building and Training, Dale Sheehan said: "Regional and multilingual training combined with operational exercises has strengthened efforts of the Americas to fight organized crime, and has offered new perspectives for future joint interventions.
"These results testify to the increasing relevance of capacity building programmes as essential pillars for international law enforcement cooperation," added Mr Sheehan.
The following countries and territories took part in Operation Lionfish: Anguilla, Antigua and Barbuda, Aruba, Bahamas, Bermuda, Bonaire, British Virgin Islands, Canada, Cayman Islands, Colombia, Costa Rica, Cuba, Curacao, Dominica, Dominican Republic, France, Germany, Grenada, Guatemala, Jamaica, Mexico, Netherlands, Nicaragua, Panama, Sint Maarten, Spain, St Kitts and Nevis, St Lucia, St Vincent and the Grenadines, Trinidad and Tobago, Turks and Caicos, United Kingdom, United States of America, Venezuela.