Moment to moment, and with every step, the Fool leaves the past behind. He carries nothing more than his purity, innocence and trust, symbolized by the white rose in his hand. The pattern on his waistcoat contains the colors of all four elements of the tarot, indicating that he is in harmony with all that surrounds him. His intuition is functioning at its peak. At this moment the Fool has the support of the universe to make this jump into the unknown. Adventures await him in the river of life.
The card indicates that if you trust your intuition right now, your feeling of the 'rightness' of things, you cannot go wrong. Your actions may appear 'foolish' to others, or even to yourself, if you try to analyze them with the rational mind. But the 'zero' place occupied by the Fool is the numberless number where trust and innocence are the guides, not skepticism and past experience.


"We have learned that more of the 'earth-earthiness' would solve our social problems, remove many isms from our vocabulary, and purify our art. And so we often wish those who interpret life for us by pen or brush would buy a trowel and pack of seeds." Ruth R. Blodgett.
The week-long sunshine and humidity boosted garden growth. Clean, crisp leaves of arugula and leaf lettuce will make a big bowl of salad for the family crowd this week. My sister is in town from Minnesota, cause for celebration.
Sweat beaded my neckline, and then down my back and chest as I harvest the garden greens. Already 88 at 10 am. Soon salty droplets dribble onto my lips. The greens are almost sweet before the extreme afternoon temps turn them bitter. Are not we all?
The herbs thrive in the summer heat, with plenty of water. More chives need cutting. Snipette of tender dill and cilantro came ready in a couple of days. Next week I will be freezing my surplus herbs for the winter meals. The pea blossoms produced 1-inch pea pods in a matter of a week. Plant scraps are added to the compost. Earthy goodness. Primal to my taste buds. Organic gardening. .


October 24, 2006 | It's a constant battle between money and food for the average college student, and a lot of the time, food wins. That aching need for a quick belly fix can overshadow any image of a full piggy bank. Or, if "money's on your mind," perhaps health isn't.
However, there are plenty of simple ways to save money with eating, even with healthy foods included.
A huge way to save food money is to cook instead of just eating out. Whether it's time for a Saturday breakfast or a late night snack, students tend to head to their cars rather than walking a few steps to their kitchens when their stomachs grumble for something more.
Cooking from scratch saves a lot of money, senior engineering major Katherine Berg said. She says she and her husband Ryan always buy in bulk and would rather spend time than money on a great meal.
Berg mentioned how she easily makes her own spaghetti sauce instead of buying it pre-made from the store. She said she buys ground turkey and peppers in bulk as well as any on-sale tomato sauce.
"[Ryan and I] can make a meaty, textured, flavorful spaghetti sauce for less than $2, and it's healthier [than the store-bought kind] because it doesn't have all the extra preservatives," Berg said.
And what does she do with any extra?
"I usually combine any leftovers into other meals," Berg said. "I mix the spaghetti sauce with beans and rice, and it makes a great dish."
Homemade meals are not only best for dinner though; eating out at any time of the day causes extra expenses. Buying the daily coffee, candy bar or café lunch really adds up when snacks and sandwiches from home can replace some of these daily mini-splurges.
Of course, students can't just be expected to cook with only a stove, oven and microwave. But assuming they have these, they can begin getting the basics.
When students first move in to their new apartments, dorms, houses, or whatever their dwellings may be, they should focus on getting the essentials for cooking. These include both ingredients and utensils.
Ingredients like eggs, cooking spray and oil are usually must-haves for cooking on a regular basis. Buying them early-on keeps cooks prepared, and with the exception of eggs, they will last years as long as they are stored properly. Some other items to consider having on-hand are spices, flour, sugars and milk.
A few basic utensils can be used to make the biggest, most complicated meal, if that's what someone's going for, or they can assist in cooking the more likely Top Ramen or scrambled eggs for those who love quick and easy meals. The best cooking utensils, according to Best Cooking Utensils Your Money Can Buy, include pots, casserole dishes, knives and mixing equipment (like bowls and spoons).
"All I really need is my can opener and a pot," Adam Cooper, a junior business major, said. "But then again, anything I need is in the house somewhere, whether it's my roommate's or mine."
Cooper said he cooks at home "all the time," but usually just foods such as pasta and canned soup.
Once students have the right equipment for cooking, the shopping can begin...well, almost. One tip Berg suggested for students before going to the store is to keep in mind what they usually eat and making a list of foods to buy.
"If you make a list of what to buy, you are much less likely to impulse shop and get things you don't need. Don't just buy what's on sale!" Berg said.
Berg said students tend to go to the store and just buy whatever's on sale, thinking they're saving money. She said it ends up costing them more since they were unlikely to buy the sale item in the first place.
"And I don't know if you've noticed," Berg said, "but a lot of the items people really need are in the back of the store. Stuff like milk and cheese are back there, forcing people to walk through all the stuff they don't need. And if they see something, sometimes they just buy it, just because."
Students should remember to buy only what they are at the store for and what they will really use. And if they eat something constantly that saves well, it's less money in the long run to buy it in bulk and have it whenever necessary.
Students also have plenty of opportunities to save with coupons, store deals and options of stores. In Logan, Gossner Foods, Inc., (located at 1051 N. 1000 West) sells cheese and milk at discount prices, and USU students always get an extra 5 percent off of their purchases at Smith's and Smith's Marketplace with a student Fresh Values card.
Another chance to save is with Albertson's 10 for $10 weekly deal. From each Wednesday to the following Tuesday, the store puts items, such as cereal or baking goods, on sale for one dollar each.
"I go to the 10 for 10 deals at Smith's and Albertson's. Or just not eat. Whichever works," Mike Hinckley, a sophomore history major said.
Students can also check several stores to see which one offers the lowest prices on items they need or want.
"Driving to more than one store is worth the gas and extra time for some items," Berg said.
After making lists, shopping around and finally purchasing the food, students are most likely to find recipes online, which is the cheapest thing to do if they already have Internet access. If not, they can get connected on campus or find the cheapest book available. For some low-budget recipes online, try Cooking on a Budget?
The phrase, "Time is money," does not hold true in the case of students eating. Spending more time to save money can really pay off, and there are plenty of ways for students to find deals and keep some extra cash that would have normally been spent on fighting hunger.


text:
Anthem review: there's a long road ahead for BioWare's shooter
It's a wobbly launch for Anthem, but BioWare's shooter could soar to heady heights over time. Here's our review...
By Bernard Boo | February 25, 2019 |
Anthem is one of the riskiest projects a major games studio has undertaken in recent memory, with BioWare offering a gaming experience radically different than the beloved narrative-driven action RPGs that have garnered the studio great success and adoration over the past fifteen years. An action-forward loot shooter in which storytelling plays a secondary role isn't exactly what fans expected or wanted from BioWare, but nevertheless, that's what we've been given.
It's important to keep your expectations in check, then. If you don't go into it expecting a BioWare RPG of old, you'll find that Anthem is an absolute blast to play. There's a lot of fun to be had when you're jet-packing around the massive map in your personalized Javelin (mech suit) and laying waste to enemies from above and below with guns, grenades and all sorts of neat looking special abilities, especially when you've got three suited-up online allies helping rain down hellfire alongside you. The visuals are super pretty, too, with detailed environments and character models scaffolded by brilliant art design. The storytelling and dialogue, while only minimally interactive, actually unfold quite nicely as long as you aren't expecting anything intergalactically epic or interpersonally intricate.
Anthem gets all of these basic elements right, which bodes well for the future of the franchise since the loot shooter format is inherently adaptable over time. But the devil, as they say, is in the details, and boy oh boy, in its current form, this game has a list of nagging issues so extensive that all of its strengths, which are actually quite strong, are persistently undermined, making for a rickety, unpolished and at times intensely irritating experience.
Before delving into the game's weaknesses, it's worth reiterating that, from a pure gameplay standpoint, Anthem is fantastic. Combat and traversal are so good, in fact, that you'll likely find yourself drawn back to the game despite the bugs and imbalances that mar each and every playthrough. Destiny comparisons are totally fair on a macro level, but once you pick up the controller and start soaring around in your Javelin, it's readily apparent that the two games have a completely different feel.
You play as a freelancer, a sort of adventurer and protector who defends the colony Fort Tarsis, the game's hub area, from the dangerous hordes that lurk outside the city's gigantic walls in the larger world of Bastion. When out on a mission, you're generally alternating between traversing the environment and engaging in combat.
Flying around in your Javelin is exhilarating and doesn't really get old thanks to how eye-popping and geographically-varied the terrain is. Enough can't be said about the game's verticality, which is so staggering that it actually feels jarring and unnatural the first time you dive straight down into a canyon to cool off your boosters – a clever mechanic that forces you to use the environments strategically.
The freedom of motion that flight affords you is maybe even more enjoyable while in combat. Aerial tactical options are available to you at all times and truly breathe life into what would otherwise be generic firefights. Taking too much damage? Fly up to the cap of that gigantic mushroom and hang out until your shields replenish. A hulking brute with a ginormous shield and a flamethrower has you pinned down? Hover twenty feet above him and circle to his back, where his fuel tanks are exposed and begging for bullets. Free flight hasn't been pulled off this smoothly in any action game in recent memory – flying simply feels really good, and the enormous scale of the environments makes you feel like you're in a heavy piece of machinery hurtling around hundreds of feet above the ground rather than a weightless mass of polygons floating through a digital space, a sensation that creates a subtle air of danger and precariousness that works pretty well.
There are four types of Javelins to choose from, each with three ability slots, two weapon slots, and six stat-altering component slots to customise and upgrade. There's the lightning-fast, melee heavy Interceptor; the well-rounded Ranger; the lumbering, destructive Colossus; and the battlefield-manipulating, elemental-based Storm. The Interceptor is particularly enjoyable, thanks to the sensation of diving into a cluster of enemies and slicing them up with tornado-like melee attacks. But each Javelin feels different and requires you to adapt to a different style of play, which deepens gameplay in the long run. When you go from the Interceptor to the Colossus, for instance, you'll no longer be able to dart around and melee everyone to shreds, so you have to adapt to using a giant shield and acting as a more supportive, ranged teammate, launching rockets into groups of enemies from afar. Falling into each Javelin's unique rhythm is a really neat learning curve.
Perhaps the most uninspired aspect of the entire game is the mind-numbingly generic loot, which is obviously a big problem for a game largely driven by, well, collecting loot. The guns have forgettable names like "Fulcrum" and "Scattershot" and "Anvil," and most of the rarer items you pick up are just higher-level versions of the same old guns. And the in-menu artwork for the guns – atrocious, brown blobs – all disappointingly look the same. What's worse is that you collect dozens and dozens of the same gun as you progress, which means you're constantly scrapping duplicates and underpowered items at the end of missions. The first Mass Effect had the same exact issue, so it's puzzling to wonder why BioWare has fallen into this trap again.
Abilities are more interesting. A lot of them are element-based, which inflicts elemental status effects and sets enemies up for combos—once an enemy is set up using a "primer" ability, another teammate can finish them off with a "detonator" attack, a surprisingly fun system that adds to the flow of combat.
Unfortunately, when you realise how repetitive the mission structures are, the game starts to feel a lot less inspired. Each mission sees you either defending hold points, searching for downed NPCs, or simply clearing an area of baddies, and while dialogue between characters provides context, it's always painfully obvious that you're carrying out essentially the same operations you did in the last five missions. If the gameplay wasn't so darn good, the monotony of the missions would be a deal breaker.
The biggest issue with the missions, though, has to do with connectivity during online play. Getting dropped into already-in-progress missions means that you miss out on vital story details and scenes, which is maybe the biggest annoyance with the game – especially if you're actually engaged with the main narrative. On top of all that, when you're dropped into an in-progress mission, you spawn at the mission's geographical starting point, which puts you miles away from the other players. A countdown promptly appears telling you to hurry up and join the other players, which is often impossible because they're so far ahead of you. When the countdown runs out, you're teleported to the other players' position. Why couldn't you just start in the right place initially? It's a mystery.
There are other technical issues to try out, too, like mission objectives failing to trigger (effectively forcing all players to quit and restart), enemies vanishing into thin air and then reappearing randomly, and insanely long loading screens that are comfortably long enough to take a bathroom break during (the launch day patch has shortened the loading times a bit, it must be said, which actually helps a lot). Hopefully, many of these issues will be ironed out in the coming weeks, but many people's opinions of Anthem will have already been tarnished in this opening weekend.
One aspect of Anthem that might not receive a lot of attention is the narrative, but after finishing the campaign, it's clear that the main story is pretty compelling. The world-building, plot-based stuff revolves around The Anthem, a powerful, ubiquitous energy that controls everything, and the Freelancers tussling with an evil faction called The Dominion over ancient relics that could possibly harness the power of The Anthem itself and end the world. It's kinda-sorta generic sci-fi stuff that's adequate and inoffensive.
But the character work, particularly concerning the main four characters, is much more captivating. There's your Freelancer, of course, and then there's the stubborn, hard-nosed ex-Freelancer, Haluk; the kind-hearted, gifted Cypher (a Freelancer's in-ear partner) Faye; and the charming, chattery Owen, your Freelancer's Cypher. The voice acting is superb, and the four characters go through a lot throughout the story. Plus, there's a big twist later in the campaign that totally changes the group dynamic and resonates emotionally in a pleasantly surprising fashion.
BioWare's facial and performance capture technology has improved by leaps and bounds, which was quite necessary since half of the game is spent in first-person in Fort Tarsis, where you interact with all of the game's NPCs. While the main characters are memorable and feel well-developed, the rest of the NPCs scattered about Fort Tarsis are a mixed bag, with some becoming so irritating over time that you might find yourself ignoring them completely. There's an old lady who lost her son years ago and starts imagining that you're him, a storyline that is meant to be sad and tragic but doesn't hit home because the writing is so stilted and the conversation (as with most conversations in Fort Tarsis) doesn't actually affect the main game beyond the self-contained exchange.
After you complete the campaign, you unlock two dungeon-like Strongholds and three Grandmaster difficulty levels. These unlocks give the game some extra life, but Grandmaster mode mostly just feels frustrating as hell since enemies become bullet sponges and can sometimes obliterate you with one hit. The Strongholds are fun to tackle with a squad of friends since they encourage you to expand your tactical abilities, despite the fact that one of them is just a replay of the final story mission.
Overall, the post-ending content feels anaemic. BioWare has laid out a 90-day road map for additional content to come, so we'll have to wait and see to find out if any of any of these planned additions make an impact and entice players to stick around.
Anthem's combat and traversal are its bread and butter, and the fact that BioWare nailed those two cornerstones of gameplay on the first pass is a great thing. The fact that we want to continue playing the game post-review is a testament to the strength of the core gameplay, but BioWare's got a long road ahead before the studio can fully resolve the shooter's myriad issues and count it as one of the top-tier titles in its catalogue. Fingers remain crossed, as we continue to hope that Anthem will soar up to those heady heights in time.
Anthem is out now for PC, PS4 and Xbox One.
Tags: AnthemBioWare
Bernard Boo | @BJ_Boo
Bernard Boo is a writer and geek enthusiast living in the San Francisco Bay Area. Movies, TV, video games, and comics are constantly rattling around in his brain,…
Read more from Bernard Boo
More on Anthem
BioWare Hiring For New Entry In a "Prestigious Franchise"
March 26, 2020 | By Matthew Byrd
Anthem gameplay preview: love isn't in the air, but you will be
January 25, 2019 | By Bernard Boo
Anthem Gameplay Will Be Redesigned by BioWare
February 10, 2020 | By Matthew Byrd
Anthem Was Originally Called Beyond
April 3, 2019 | By Matthew Byrd

redpajama_set_name: RedPajamaCommonCrawl


As a climber: 'Simon Nadin is a legend. Once commonly described as the "one you're unlikely to have heard of," although this can't really be the case any more – his secret is out. He's mostly remembered for being a modest, lanky, beer-drinking climbing world champion. Someone to aspire to. It is true what they say, that by repeating his routes you tend to get a measure of the man. An absolute all-rounder; technical, bold, powerful, delicate, it didn't matter and all light years ahead of their time. All his routes represent new levels, a breakthrough in boldness and technicality which still command a great deal of respect today and all from a man who we could see in ourselves. A dude who would drink beer and play down his ascents with a modesty seldom encountered in today's sponsor fuelled arena, where bullsh*t and headline grabbing seem to be the new order of the day." Andy Turner for the BMC Magazine.


text:
NEWS RELEASE: ICBA Wins North American Trade Association of the Year
VANCOUVER – The Independent Contractors and Businesses Association (ICBA) has won six prestigious Reed Awards, including being named the 2019 North American Trade Association of the Year, at a ceremony last week in Austin, Texas.
"This is a tremendous honour and reflects the caliber of work being undertaken by the ICBA team in workforce development, public policy advocacy and communications and marketing," said Chris Gardner, ICBA President. "It also highlights ICBA's willingness to fearlessly speak out on policy issues consistently. Winning North American Trade Association of the Year is external recognition of the team we have built at ICBA and all of the hard work they do every day on behalf of our members."
ICBA also won Overall Best Web Video – Public Affairs for its Big Gas ad, which has been watched more than 400,000 times on social media. Said Shane Greer, co-publisher of Campaigns & Elections and host of the Reed Awards dinner, "Oh Canada: the Overall Best Web Video – Public Affairs went to the Independent Contractors and Businesses Association for their 'Get Canada's Big Gas Moving' ad… We've seen it many times now and still laugh every time."
ICBA's Big Gas campaign also won:
Best International Web Video
Best Canadian Web Video
Best International Outdoor Advertising
Best Canadian Outdoor Advertising
"Our Big Gas campaign caught lightning in a bottle and we're very proud to see it recognized with these awards," said Jordan Bateman, ICBA VP-Communications. "Our communications and advocacy work stands with the best in North America and we will continue to strongly, articulately, creatively and passionately make the case for a strong economy and our members' issues."
The Reed Awards, named after Campaigns & Elections founder and marketing pioneer Stanley Foster Reed, embody excellence in campaigning, political consulting, and public policy advocacy. Reed Award winners represent the very best the political campaign/policy advocacy industry has to offer. ICBA's work was competing against the best in the business among American trade associations and all of the creative material put out by the Democratic and Republican parties.
"The Reeds are the most exacting award in political campaigns and grassroots advocacy," said Campaigns & Elections' Greer. "Winning one is exceptionally difficult, and those who have won the honor stand head and shoulders above the competition, producing world class work that is second to none."
In 2018, ICBA won three Reed Awards for its Site C pink slip campaign, which successfully pushed the NDP Government to continue a construction project they campaigned against.
For a full list of 2019 Reed Award winners, click HERE. To view ICBA's winning Big Gas ad, click HERE.
TRAINING THURSDAY: Trenching and Excavation Safety Workshop
Affordable Housing: The BC Construction Monitor
OP-ED: The Devil is in the Details of the NDP Spendathon
BREAKING NEWS: ICBA Wins 2019…BREAKING NEWS:…TRAINING THURSDAY: Leading and…TRAINING THURS…


I usually recommend albums when I like almost all of the tracks on the album, but this is a bit different. Don't get me wrong — I don't dislike any of the tracks (I find Sinead's voice so extraordinary that she could make a nursery rhyme interesting). 'Mandinka', 'Jerusalem' and 'Just Like U Said It Would B' are all great tracks, though the heavy 80s synth sounds are a bit dated in places. But I love this album for one track — 'Troy'.
This song uses her range to its full potential. Very few singers have such a mutable voice, and she can shift from a sweet whisper to a howling roar in a second. The lines, "I have learned/I will rise" are almost whispered, then there's silence and "The phoenix from the flame" are shouted out with such strength and triumphalism that you can't help but feel uplifted.
This album is 17 years old now, but the song came back to me this week watching Touching the Void, and thinking about endurance, survival and life. The song obviously touches on these themes, but there's another link for me. I mentioned in my entry on Touching the Void that it reminded me of a documentary I saw about flamingos. The latin name for the flamingo is Phoenicopterus ruber (there are several sub-species), and Phoenicopterus roughly means 'phoenix-winged' (I think--my Latin and Greek are a bit rusty). I believe that they were named both for their flame-like colour, but also because they can exist in scorching, hostile conditions that would kill any other animal. In a weird kind of word association, I think of flamingos when I hear 'Troy', and now also mountaineering.
Unfortunately, this has the be the worst-recorded album of great music that I've ever heard, so my music-loving and audiophile selves have a bit of a battle over it. The music-lover usually wins, but the recording engineers should hang their heads in shame over this dog's dinner. I know that Sinead's enormous dynamic range must have made finding the right level a bit of a challenge, but even so, they should have been able to do a better job with it.


text:
package com.intellij.execution.actions;

import com.intellij.execution.ExecutionManager;
import com.intellij.execution.process.ProcessHandler;
import com.intellij.execution.ui.RunContentDescriptor;
import com.intellij.execution.ui.RunContentManager;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.project.Project;
import org.jetbrains.annotations.Nullable;

public class StopAction extends AnAction{
  public void actionPerformed(final AnActionEvent e) {
    final ProcessHandler processHandler = getProcessHandler(e);
    if(processHandler == null) return;
    if(processHandler.detachIsDefault()) {
      processHandler.detachProcess();
    } else {
      processHandler.destroyProcess();
    }
  }

  public void update(final AnActionEvent e) {
    final ProcessHandler processHandler = getProcessHandler(e);
    boolean enable = processHandler != null && !processHandler.isProcessTerminating() && !processHandler.isProcessTerminated();
    e.getPresentation().setEnabled(enable);
  }

  @Nullable
  private static ProcessHandler getProcessHandler(final AnActionEvent e) {
    final RunContentDescriptor contentDescriptor = RunContentManager.RUN_CONTENT_DESCRIPTOR.getData(e.getDataContext());
    final ProcessHandler processHandler;
    if (contentDescriptor != null) {
      // toolwindow case
      processHandler = contentDescriptor.getProcessHandler();
    }
    else {
      // main menu toolbar
      final Project project = PlatformDataKeys.PROJECT.getData(e.getDataContext());
      final RunContentDescriptor selectedContent = project == null? null : ExecutionManager.getInstance(project).getContentManager().getSelectedContent();
      processHandler = selectedContent == null? null : selectedContent.getProcessHandler();
    }
    return processHandler;
  }
}

redpajama_set_name: RedPajamaGithub


text:
Nintendo wii Plus May well 2022 Free Games
Traditionally, Playstation 3 or xbox Plus lets out free game titles on the first of all Tuesday of each and every month. That signifies that on May two, 2022, Nintendo wii Plus users will be able to down load a new game from Nintendo wii Store for the purpose of free. Free video games in May 2022 will include FIFA 22, Hood Outlaws & Legends, Kill the Spire, and People of Midgard. But that isn't the end belonging to the surprises. Mainly because you'll see in this article, the no cost games really are a bit more assorted than usual, nonetheless you'll still be able to download all of them for free.
An alternative bonus to joining PS Plus is the fact you'll get a new game on a monthly basis! After you've joined, you will see a new video game in your Ps Retailer or dash. Whether you download the sport or certainly not, the free games will be added to your PlayStation selection for free, and you'll have access to all of them for the rest of your subscription. The games will also be playable as long as you have a PlayStation.
Ps Plus is also introducing 3 new online games this summer. Two of the video games are free with regards to PS4 customers, one in PlayStation 5, and 1 for Ps 5. The video games will be available in full-length https://viewbestprice.com/5-important-budget-saving-benefits-of-data-room-service-providers/ demos and are worth a download. All will be worth trying out. One even provides a native PS5 version. When you are interested in installing a new game for free, be sure you subscribe to Playstation 3 or xbox Plus in April 2022 to be sure have fun with them!


There aren't any MamaMancini's coupons available right now.
Be sure to sign up for email alerts or add them to your list, so you'll always be the first to know when more MamaMancini's coupons arrive! Want other grocery coupons? We've got them right here.


text:
Bulgaria in EU
NATO Defence Ministers Agree to Set Up Two More Force Integration Units
Politics » DEFENSE | October 9, 2015, Friday // 10:54
Defence Ministers stand together to pose for a group photo during a North Atlantic Treaty Organization NATO Defense Ministers meeting at the alliance`s headquarters in Brussels, Belgium, 08 October 2015. Photo: EPA
At their meeting in Brussels on Thursday, the defence ministers of NATO member countries agreed to set up two Force Integration Units in Hungary and Slovakia.
In September, NATO established such units in six countries on the eastern flank of the Alliance – Bulgaria, Estonia, Latvia, Lithuania, Poland and Romania.
The establishment of these small headquarters is one of the steps taken by NATO in enhancing the Alliance's collective defence.
The defence ministers reviewed the implementation of the Alliance's Readiness Action Plan, which had been agreed at the NATO summit in Wales last year.
The plan ensures the readiness of NATO to confront challenges in an evolving and fast-moving security environment.
The ministers also approved the completed military concept for the Enhanced NATO Response Force including its command and control arrangements.
NATO Secretary General Jens Stoltenberg stated that now everything was in place to make the Response Force stronger, faster and more capable.
Stoltenberg also welcomed the willingness of Germany to lead the Alliance's very high readiness Spearhead Force in 2019 and the plans of the UK to rotate more troops into the Baltics and Poland for training and exercises.
The ministers also discussed the situation in Syria and Afghanistan and the violation of Turkish airspace by Russian fighter aircraft participating in the airstrikes against Islamic State (IS).
Stoltenberg called on Russia to play a constructive role in the fight against IS and reassured Ankara that NATO stands in strong solidarity with Turkey.
As regards the situation in Afghanistan, the secretary general said that the allies will decide on the level of troops on the basis of a forthcoming detailed security assessment.
Defense » Be a reporter: Write and send your article
Tags: NATO, Defence, Bulgaria, force integration unit, Readiness Action Plan, Response Force, Spearhead Force, IS, Russia, Syria, Afghanistan, airspace, violation, airstrikes, turkey, security
» Lavrov: Russia does not want War with Ukraine
» Lukashenko: War is Possible only if Belarus or Russia are Attacked
More from Defense
» Bulgaria is Strengthening the Defense of its Borders
» Ex-Deputy Defense Minister: Bulgaria is the Weak Link in NATO's Eastern Wing
» Bulgaria will Receive the latest Training Simulators for the F-16 Fighters
» CNN: The United States is Considering Sending up to 1,000 Troops to Bulgaria
» Defense Minister: Bulgaria can join a NATO Exercise with a Battalion of 1,000 people


Guests sign registry book to get their one-day badge and provide a written record of visit.
A carbonless copy of each badge is kept in the registry book for future reference.
To activate 24-hour badge, simply peel off liner and fold tab back.
Expired badges reveal a highly visible color indicator.
Keep track of visitors and manage traffic in your facility with one convenient book. Guests sign registry book to get their one-day badge and provide a written record of visiting your facility. Expired badges reveal a highly visible color indicator that can be seen from up to 50 ft. away. To activate 24-hour badge, simply peel off liner and fold tab back. Carbonless copy of each badge is kept in registry book. Store completed registry book when all badges are used. Each book contains 150 self-adhesive visitor badges.
Name badge kit with registry book and 150 self-expiring badges.


The JoeyDCares Rock Orchestra needs both adult and student volunteers to assist on our committees. If you are interested in joining one of our committees please see committee descriptions and contact Mr. Dundore at JoeyD@JDCRockorchestra.org.
All members of the community are encouraged to get involved with this valuable organization; you do not need to have a family member in the group. While parents of members are not required to volunteer, they are encouraged to help out in any way they can to give the students the best experience possible.
See descriptions of all committees. For more information or if interested in helping out in any way, contact Joey Dundore at JoeyD@JDCRockorchestra.org.


Phillies pitcher Jake Arrieta greets a fan as he runs onto the field Wednesday during spring training.
CLEARWATER, Fla. — Jake Arrieta's season could be delayed for the second straight year, as Gabe Kapler revealed Wednesday that the pitcher underwent minor knee surgery a few weeks before spring training.
Arrieta injured his left knee during an offseason weight-training workout, Kapler said. The manager labeled the surgery "just a meniscus cleanup" and said Arrieta has already thrown off the mound. The Phillies, because of scheduled off days, could get by with a four-man rotation until April 9.
Arrieta missed the first week of last season after he signed with the Phillies just a month before opening day. Arrieta, who will turn 33 next month, had a 3.96 ERA last season in 31 starts and is entering the second-year of a three-year, $75 million contract. Arrieta, if healthy, projects to start the season as the team's No. 2 starter, behind Aaron Nola.
Kapler also said that righthander Jerad Eickhoff and outfielder Aaron Altherr are behind schedule because of injuries.
Eickhoff's symptoms returned in January from the carpal tunnel syndrome he believed had been corrected by postseason surgery. Eickhoff, who did not pitch last season until September, had a follow-up with his doctor in January and was told he's not a candidate for surgery. The Phillies will monitor his health next week after he throws a bullpen session.
Altherr suffered a right-foot injury at the end of last season and is limited to taking batting practice in the cage before the team does a "gradual build-up to running and cutting," Kapler said.
"He might be a little behind in starting games, but we have no reason to think he won't be fully ready to go for the season," Kapler said.
"We learned that when we want to achieve something great, we have to lean on the people around us," Kapler said. "The idea of standing shoulder to shoulder is what you see on the first-base line or the third-base line at the beginning of the season. You see our guys standing shoulder to shoulder together. If you look at our clubhouse and you see how it's configured at home, all of our guys, their chairs are shoulder to shoulder. And when we fight together on the baseball field, we do it shoulder to shoulder.


text:
Q: Programmatically adding custom radio button not working in Android API 22 I would like to use custom radio buttons in an Android app that must target API 22 and later.  I'd like to have something like this

When complete the source for the radio button text and values will come from an SQLite database and therefore I will need to be able to add the radio buttons programmatically rather than defining them in the XML layout file.
I've attempted this by using the code described in this blog post https://crosp.net/blog/software-development/mobile/android/creating-custom-radio-groups-radio-buttons-android/ and the code it describes can be found here https://github.com/CROSP/custom-radio-group-radio-button-android.
I've created an example that works when I try it on my emulator that is API 25.  However, the problem comes when I run it on a device/emulator that is API 22.  Using Android Studio I have run using the Nexus 4 API 22 emulator but unfortunately, the code does not work.  When I say it doesn't work all you see is a blank screen rather than the custom radio buttons that I see when I run on API 25.  I've looked at the logcat and there does not appear to be any errors that are reported.
So, in summary, I have some code that works for API 25 but not for API 22.  And I'd like to know how to fix the code so that it will work in API 22.
I've created the most basic version of the code that I can that replicates the problem.  This code is below
MainActivity.java
package net.myexample.radioapp;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.LinearLayout;
import net.myexample.radioapp.CustomRadioButtons.PresetRadioGroup;
import net.myexample.radioapp.CustomRadioButtons.PresetValueButton;

 public class MainActivity extends AppCompatActivity
    {
        private PresetRadioGroup mPledgeDescriptionsContainer;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            mPledgeDescriptionsContainer =
            findViewById(R.id.pledge_descriptions_container);
            int counter =0;
            do {
                String description = "test " + counter;
                double amount = counter;
                PresetValueButton rbtn = new PresetValueButton(this);
                rbtn.setId(counter);
                rbtn.setLayoutParams(new
    LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 0, 1.0f));
                rbtn.setUnit(description);
                rbtn.setValue("£" + amount);
                mPledgeDescriptionsContainer.addView(rbtn);
                counter++;
            } while (counter < 5);
        }
    }

The following java files are very similar to those found in https://github.com/CROSP/custom-radio-group-radio-button-android
PresetRadioGroup.java
package net.myexample.radioapp.CustomRadioButtons;
import android.content.Context;
import android.content.res.TypedArray;
import android.os.Build;
import android.support.annotation.IdRes;
import android.support.annotation.RequiresApi;
import android.util.AttributeSet;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import net.myexample.radioapp.R;
import java.util.HashMap;

public class PresetRadioGroup extends LinearLayout {

    private int mCheckedId = View.NO_ID;
    private boolean mProtectFromCheckedChange = false;
    private OnCheckedChangeListener mOnCheckedChangeListener;
    private HashMap<Integer, View> mChildViewsMap = new HashMap<>();
    private PassThroughHierarchyChangeListener mPassThroughListener;
    private RadioCheckable.OnCheckedChangeListener mChildOnCheckedChangeListener;

    public PresetRadioGroup(Context context) {
        super(context);
        setupView();
    }

    public PresetRadioGroup(Context context, AttributeSet attrs) {
        super(context, attrs);
        parseAttributes(attrs);
        setupView();
    }

    @RequiresApi(api = Build.VERSION_CODES.HONEYCOMB)
    public PresetRadioGroup(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        parseAttributes(attrs);
        setupView();
    }

    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
    public PresetRadioGroup(
            Context context,
            AttributeSet attrs,
            int defStyleAttr,
            int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
        parseAttributes(attrs);
        setupView();
    }

    private void parseAttributes(AttributeSet attrs) {
        TypedArray a = getContext().obtainStyledAttributes(attrs,
                R.styleable.PresetRadioGroup, 0, 0);
        try {
            mCheckedId =
                    a.getResourceId(R.styleable.PresetRadioGroup_presetRadioCheckedId,
                    View.NO_ID);
        } finally {
            a.recycle();
        }
    }

    private void setupView() {
        mChildOnCheckedChangeListener = new CheckedStateTracker();
        mPassThroughListener = new PassThroughHierarchyChangeListener();
        super.setOnHierarchyChangeListener(mPassThroughListener);
    }

    @Override
    public void addView(View child, int index, ViewGroup.LayoutParams params) {
        if (child instanceof RadioCheckable) {
            final RadioCheckable button = (RadioCheckable) child;
            if (button.isChecked()) {
                mProtectFromCheckedChange = true;
                if (mCheckedId != View.NO_ID) {
                    setCheckedStateForView(mCheckedId, false);
                }
                mProtectFromCheckedChange = false;
                setCheckedId(child.getId(), true);
            }
        }
        super.addView(child, index, params);
    }

    @Override
    public void setOnHierarchyChangeListener(OnHierarchyChangeListener listener) {
        // the user listener is delegated to our pass-through listener
        mPassThroughListener.mOnHierarchyChangeListener = listener;
    }

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
        if (mCheckedId != View.NO_ID) {
            mProtectFromCheckedChange = true;
            setCheckedStateForView(mCheckedId, true);
            mProtectFromCheckedChange = false;
            setCheckedId(mCheckedId, true);
        }
    }

    private void setCheckedId(@IdRes int id, boolean isChecked) {
        mCheckedId = id;
        if (mOnCheckedChangeListener != null) {
            mOnCheckedChangeListener.onCheckedChanged(this,
                    mChildViewsMap.get(id), isChecked, mCheckedId);
        }
    }

    @Override
    protected boolean checkLayoutParams(ViewGroup.LayoutParams p) {
        return p instanceof LayoutParams;
    }

    public void clearCheck() {
        check(View.NO_ID);
    }

    public void check(@IdRes int id) {
        if (id != View.NO_ID && (id == mCheckedId)) {
            return;
        }

        if (mCheckedId != View.NO_ID) {
            setCheckedStateForView(mCheckedId, false);
        }

        if (id != View.NO_ID) {
            setCheckedStateForView(id, true);
        }
        setCheckedId(id, true);
    }

    private void setCheckedStateForView(int viewId, boolean checked) {
        View checkedView;
        checkedView = mChildViewsMap.get(viewId);
        if (checkedView == null) {
            checkedView = findViewById(viewId);
            if (checkedView != null) {
                mChildViewsMap.put(viewId, checkedView);
            }
        }
        if (checkedView != null && checkedView instanceof RadioCheckable) {
            ((RadioCheckable) checkedView).setChecked(checked);
        }
    }

    @Override
    public LayoutParams generateLayoutParams(AttributeSet attrs) {
        return new LayoutParams(getContext(), attrs);
    }

    public void setOnCheckedChangeListener(
            OnCheckedChangeListener onCheckedChangeListener) {
        mOnCheckedChangeListener = onCheckedChangeListener;
    }

    public OnCheckedChangeListener getOnCheckedChangeListener() {
        return mOnCheckedChangeListener;
    }

    public static interface OnCheckedChangeListener {
        void onCheckedChanged(
                View radioGroup, View radioButton, boolean isChecked, int checkedId);
    }

    public static class LayoutParams extends LinearLayout.LayoutParams {
        /**
         * {@inheritDoc}
         */
        public LayoutParams(Context c, AttributeSet attrs) {
            super(c, attrs);
        }

        /**
         * {@inheritDoc}
         */
        public LayoutParams(int w, int h) {
            super(w, h);
        }

        /**
         * {@inheritDoc}
         */
        public LayoutParams(int w, int h, float initWeight) {
            super(w, h, initWeight);
        }

        /**
         * {@inheritDoc}
         */
        public LayoutParams(ViewGroup.LayoutParams p) {
            super(p);
        }

        /**
         * {@inheritDoc}
         */
        public LayoutParams(MarginLayoutParams source) {
            super(source);
        }

        /**
         *
Fixes the child's width to
         * {@link android.view.ViewGroup.LayoutParams#WRAP_CONTENT} and the child's
         * height to  {@link android.view.ViewGroup.LayoutParams#WRAP_CONTENT}
         * when not specified in the XML file.

         *
         * @param a          the styled attributes set
         * @param widthAttr  the width attribute to fetch
         * @param heightAttr the height attribute to fetch
         */
        @Override
        protected void setBaseAttributes(TypedArray a,
                                         int widthAttr, int heightAttr) {

            if (a.hasValue(widthAttr)) {
                width = a.getLayoutDimension(widthAttr, "layout_width");
            } else {
                width = WRAP_CONTENT;
            }

            if (a.hasValue(heightAttr)) {
                height = a.getLayoutDimension(heightAttr, "layout_height");
            } else {
                height = WRAP_CONTENT;
            }
        }
    }

    private class CheckedStateTracker implements RadioCheckable.OnCheckedChangeListener {
        @Override
        public void onCheckedChanged(View buttonView, boolean isChecked) {
            // prevents from infinite recursion
            if (mProtectFromCheckedChange) {
                return;
            }

            mProtectFromCheckedChange = true;
            if (mCheckedId != View.NO_ID) {
                setCheckedStateForView(mCheckedId, false);
            }
            mProtectFromCheckedChange = false;

            int id = buttonView.getId();
            setCheckedId(id, true);
        }
    }

    private class PassThroughHierarchyChangeListener implements
            ViewGroup.OnHierarchyChangeListener {
        private ViewGroup.OnHierarchyChangeListener mOnHierarchyChangeListener;

        /**
         * {@inheritDoc}
         */
        public void onChildViewAdded(View parent, View child) {
            if (parent == PresetRadioGroup.this && child instanceof RadioCheckable) {
                int id = child.getId();
                // generates an id if it's missing
                if (id == View.NO_ID) {
                    id = ViewUtils.generateViewId();
                    child.setId(id);
                }
                ((RadioCheckable) child).addOnCheckChangeListener(
                        mChildOnCheckedChangeListener);
                mChildViewsMap.put(id, child);
            }

            if (mOnHierarchyChangeListener != null) {
                mOnHierarchyChangeListener.onChildViewAdded(parent, child);
            }
        }

        /**
         * {@inheritDoc}
         */
        public void onChildViewRemoved(View parent, View child) {
            if (parent == PresetRadioGroup.this && child instanceof RadioCheckable) {
                ((RadioCheckable) child)
                        .removeOnCheckChangeListener(mChildOnCheckedChangeListener);
            }
            mChildViewsMap.remove(child.getId());
            if (mOnHierarchyChangeListener != null) {
                mOnHierarchyChangeListener.onChildViewRemoved(parent, child);
            }
        }
    }
}

PresetValueButton.java
  package net.myexample.radioapp.CustomRadioButtons;
    import android.content.Context;
    import android.content.res.Resources;
    import android.content.res.TypedArray;
    import android.graphics.Color;
    import android.graphics.drawable.Drawable;
    import android.os.Build;
    import android.support.annotation.Nullable;
    import android.support.annotation.RequiresApi;
    import android.util.AttributeSet;
    import android.view.LayoutInflater;
    import android.view.MotionEvent;
    import android.view.View;
    import android.widget.RelativeLayout;
    import android.widget.TextView;
    import net.myexample.radioapp.R;
    import java.util.ArrayList;

    public class PresetValueButton extends RelativeLayout implements RadioCheckable {
        private TextView mValueTextView, mUnitTextView;
        public static final int DEFAULT_TEXT_COLOR = Color.WHITE;
        private String mValue;
        private String mUnit;
        private int mValueTextColor;
        private int mUnitTextColor;
        private int mPressedTextColor;
        private Drawable mInitialBackgroundDrawable;
        private OnClickListener mOnClickListener;
        private OnTouchListener mOnTouchListener;
        private boolean mChecked;
        private ArrayList<OnCheckedChangeListener> mOnCheckedChangeListeners
                = new ArrayList<>();

        public PresetValueButton(Context context) {
            super(context, null, R.style.PresetLayoutButton);
            mValueTextColor = Color.WHITE;
            mUnitTextColor = Color.WHITE;
            mPressedTextColor =Color.WHITE;
            setupView();
        }

        public PresetValueButton(Context context, AttributeSet attrs) {
            super(context, attrs);
            parseAttributes(attrs);
            setupView();
        }

        @RequiresApi(api = Build.VERSION_CODES.HONEYCOMB)
        public PresetValueButton(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
            parseAttributes(attrs);
            setupView();
        }

        @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
        public PresetValueButton(Context context, AttributeSet attrs,
                                 int defStyleAttr, int defStyleRes) {
            super(context, attrs, defStyleAttr, defStyleRes);
            parseAttributes(attrs);
            setupView();
        }

        private void parseAttributes(AttributeSet attrs) {
            TypedArray a = getContext().obtainStyledAttributes(attrs,
                    R.styleable.PresetValueButton, 0, 0);
            Resources resources = getContext().getResources();
            try {
                mValue = a.getString(R.styleable.PresetValueButton_presetButtonValueText);
                mUnit = a.getString(R.styleable.PresetValueButton_presetButtonUnitText);
                mValueTextColor = a.getColor(
                        R.styleable.PresetValueButton_presetButtonValueTextColor,
                        resources.getColor(R.color.fontWhite));
                mPressedTextColor = a.getColor(
                        R.styleable.PresetValueButton_presetButtonPressedTextColor
                        , Color.WHITE);
                mUnitTextColor = a.getColor(
                        R.styleable.PresetValueButton_presetButtonUnitTextColor
                        , resources.getColor(R.color.fontWhite));
            } finally {
                a.recycle();
            }
        }

        private void setupView() {
            inflateView();
            bindView();
            setCustomTouchListener();
        }

        protected void inflateView() {
            LayoutInflater inflater = LayoutInflater.from(getContext());
            inflater.inflate(R.layout.custom_preset_button, this, true);
            mValueTextView = (TextView) findViewById(R.id.text_view_value);
            mUnitTextView = (TextView) findViewById(R.id.text_view_unit);
            mInitialBackgroundDrawable = getBackground();
        }

        protected void bindView() {
            if (mUnitTextColor != DEFAULT_TEXT_COLOR) {
                mUnitTextView.setTextColor(mUnitTextColor);
            }
            if (mValueTextColor != DEFAULT_TEXT_COLOR) {
                mValueTextView.setTextColor(mValueTextColor);
            }
            mUnitTextView.setText(mUnit);
            mValueTextView.setText(mValue);
        }

        @Override
        public void setOnClickListener(@Nullable OnClickListener l) {
            mOnClickListener = l;
        }

        protected void setCustomTouchListener() {
            super.setOnTouchListener(new TouchListener());
        }

        @Override
        public void setOnTouchListener(OnTouchListener onTouchListener) {
            mOnTouchListener = onTouchListener;
        }

        public OnTouchListener getOnTouchListener() {
            return mOnTouchListener;
        }

        private void onTouchDown(MotionEvent motionEvent) {
            setChecked(true);
        }

        private void onTouchUp(MotionEvent motionEvent) {
            // Handle user defined click listeners
            if (mOnClickListener != null) {
                mOnClickListener.onClick(this);
            }
        }

        public void setCheckedState() {
            setBackgroundResource(R.drawable.background_shape_preset_button__pressed);
            mValueTextView.setTextColor(mPressedTextColor);
            mUnitTextView.setTextColor(mPressedTextColor);
        }

        public void setNormalState() {
            setBackgroundDrawable(mInitialBackgroundDrawable);
            mValueTextView.setTextColor(mValueTextColor);
            mUnitTextView.setTextColor(mUnitTextColor);
        }

        public String getValue() {
            return mValue;
        }

        public void setValue(String value) {
            mValue = value;
            mValueTextView.setText(value);
        }

        public String getUnit() {
            return mUnit;
        }

        public void setUnit(String unit) {
            mUnit = unit;
            mUnitTextView.setText(unit);
        }

        @Override
        public void setChecked(boolean checked) {
            if (mChecked != checked) {
                mChecked = checked;
                if (!mOnCheckedChangeListeners.isEmpty()) {
                    for (int i = 0; i < mOnCheckedChangeListeners.size(); i++) {
                        mOnCheckedChangeListeners.get(i).onCheckedChanged(this, mChecked);
                    }
                }
                if (mChecked) {
                    setCheckedState();
                } else {
                    setNormalState();
                }
            }
        }

        @Override
        public boolean isChecked() {
            return mChecked;
        }

        @Override
        public void toggle() {
            setChecked(!mChecked);
        }

        @Override
        public void addOnCheckChangeListener(OnCheckedChangeListener onCheckedChangeListener) {
            mOnCheckedChangeListeners.add(onCheckedChangeListener);
        }

        @Override
        public void removeOnCheckChangeListener(
                OnCheckedChangeListener onCheckedChangeListener) {
            mOnCheckedChangeListeners.remove(onCheckedChangeListener);
        }

        private final class TouchListener implements OnTouchListener {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        onTouchDown(event);
                        break;
                    case MotionEvent.ACTION_UP:
                        onTouchUp(event);
                        break;
                }
                if (mOnTouchListener != null) {
                    mOnTouchListener.onTouch(v, event);
                }
                return true;
            }
        }
    }

RadioCheckable.java
package net.myexample.radioapp.CustomRadioButtons;
import android.view.View;
import android.widget.Checkable;

public interface RadioCheckable extends Checkable {
    void addOnCheckChangeListener(OnCheckedChangeListener onCheckedChangeListener);
    void removeOnCheckChangeListener(OnCheckedChangeListener onCheckedChangeListener);

    public static interface OnCheckedChangeListener {
        void onCheckedChanged(View buttonView, boolean isChecked);
    }
}

ViewUtils.java
package net.myexample.radioapp.CustomRadioButtons;
import android.annotation.SuppressLint;
import android.os.Build;
import android.view.View;
import java.util.concurrent.atomic.AtomicInteger;

public class ViewUtils {
    private static final AtomicInteger sNextGeneratedId = new AtomicInteger(1);

    @SuppressLint("NewApi")
    public static int generateViewId() {

        if (Build.VERSION.SDK_INT < 17) {
            for (; ; ) {
                final int result = sNextGeneratedId.get();
                // aapt-generated IDs have the high byte nonzero;
                // clamp to the range under that.
                int newValue = result + 1;
                if (newValue > 0x00FFFFFF)
                    newValue = 1; // Roll over to 1, not 0.
                if (sNextGeneratedId.compareAndSet(result, newValue)) {
                    return result;
                }
            }
        } else {
            return View.generateViewId();
        }
    }
}

layout folder
activity_main.xml
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
        <net.myexample.radioapp.CustomRadioButtons.PresetRadioGroup
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/pledge_descriptions_container"
            android:layout_alignParentRight="true"
            android:orientation="vertical">
        </net.myexample.radioapp.CustomRadioButtons.PresetRadioGroup>
    </LinearLayout>

custom_preset_button.xml
<merge xmlns:android="http://schemas.android.com/apk/res/android">
  <TextView
      android:id="@+id/text_view_value"
      style="@style/PresetLayoutButton_ValueText"
      android:layout_width="100dp"
      android:layout_height="wrap_content"
      android:layout_alignParentLeft="true"
      android:layout_alignParentTop="true"
      />
  <TextView
      android:id="@+id/text_view_unit"
      style="@style/PresetLayoutButton_UnitText"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_toRightOf="@+id/text_view_value"
      />
</merge>

drawable folder
background_selector_preset_button.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/background_shape_preset_button__pressed" android:state_focused="true"/>
    <item android:drawable="@drawable/background_shape_preset_button__pressed" android:state_pressed="true"/>
    <item android:drawable="@drawable/background_shape_preset_time_button"/>
</selector>

background_shape_preset_button_pressed.xml
 <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
           android:shape="rectangle">
        <solid android:color="#fe9900"/>
    </shape>

background_shape_preset_time_button.xml
   <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
           android:shape="rectangle">
        <solid android:color="@color/fontWhite"/>
        <stroke
            android:width="0.2dp"
            android:color="#2f3f3f"/>
    </shape>

values folder
attrs_preset_radio_group.xml
 <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <declare-styleable name="PresetRadioGroup">
            <attr name="presetRadioCheckedId" format="reference"/>
        </declare-styleable>
    </resources>

attrs_preset_value_button.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
  <declare-styleable name="PresetValueButton">
    <attr name="presetButtonValueText" format="integer"/>
    <attr name="presetButtonUnitText" format="string"/>
    <attr name="presetButtonValueTextColor" format="color"/>
    <attr name="presetButtonPressedTextColor" format="color"/>
    <attr name="presetButtonUnitTextColor" format="color"/>
  </declare-styleable>
</resources>

colors.xml
 <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <color name="fontWhite">#FFF</color>
        <color name="main_background">#000</color>
    </resources>

strings.xml
 <resources>
        <string name="app_name">my app</string>
    </resources>

styles.xml
 <resources>

    </resources>

redpajama_set_name: RedPajamaStackExchange


If all these statements are true then our offer is perfect for you!
What site will I get, if I order SEO campaign from Direct Line Development?
We will choose useful modules for your site which will expand its functionality. You will have an opportunity to create "Our Team" section, photo gallery, map with automatic route planning on mobile version, news and others.
There is so much more you can have on your website!
For more detailed information, please give us a call!
If you have any doubts about the quality of our service, feel free to give us a call!
Direct Line Development has launched a third office in Austin, TX.
Direct Line Development, Inc. is actively growing, and we are ready to accept a new member in our team in Philadelphia office as a bilingual project manager.


WordPress is wonderful. Thanks to him, people who do not have nor computer science idea can have a webpage or a blog.
That was unthinkable not many years ago!
Really, the presence has democratised online. Although it has €œbut€, and is what costs to obtain that has the design that you want.
For that, or you have the necessary knowledge or it is called on to contract to you somebody so that it does it by you.
Or thus it was until a time ago.
Because some ago years appeared the visual maquetadores, some tools with which you can give to your WordPress the appearance which you want almost without effort.
And as so many options exist, there am preparation this post in which I speak to you on the best visual publishers for WordPress which they exist at present.
It can interest to you: The faster Hosting WordPress of Spain.
It obtains 100/100 in PageSpeed easily.
To give to your page the aspect that you never want has been so easy.
What contribute to WordPress this type of publishers?
Use do you some of these visual publishers for WordPress?
If we summarized it in a word, the great advantage to use visual constructors in WordPress is the possibilities.
In particular, the possibility of creating an own subject for your webpage, that distinguishes you of the rest of competition and it adapts to your needs.
Easy to use: its operation consists of €œdragging & dropping€ what you want to incorporate.
Zero code: you do not need technical knowledge nor to touch to archives css, php or HTML.
Tests A/B: as to modify the subject he is simple, it is easy to make tests to see how you turn more.
More functionalities: many tell on addons that they allow to add new resources you.
Saving of time: between the simple thing that is to use it and not to depend on third parties, your Web will be ready long before.
And all this doing it you yourself€¦ What can more be asked?
What if we recommended to you, as always, it is that in case of using a publisher of these, you always count on hosting of quality as ours, to guarantee a speed to you of optimal load.
It has been of the last ones in arriving but it is monopolizing all the compliments. The reason? Everything what offers to cost zero.
Thus it is, with Elementor you have everything what you need to design a webpage (or to maquetar your entrances) without spending nor a Euro.
All this with an incredible facility, documentation very well in Internet and the certainty that he is 100% responsive one.
And in case it is not sufficient, it has a payment version that increases its possibilities still more.
Perhaps although you do not need it, since you can add addons to him of third parties to arrive where the gratuitous version does not arrive.
We are before best page builder for WordPress? It is very probable.
We now pass to everything a veteran in the land of the visual maquetadores for WordPress.
To be able to use it in limitless sites.
To all that, add the light thing to him that is (reason why it does not affect at the speed of load), that is oriented to the SEO and that is compatible with WooCommerce.
As negative point, you must pay to obtain all the functionalities (Although it counts on a gratuitous version limited enough).
One of the best visual publishers for WordPress and that many blogers use to create their pages of sale and pick up of leads.
Because although it is possible to be used to create any type of page, it is clear that its direction is the one to help to increase your number you of subscribers, sales, etc.
We go, that if your intention is to make money with your webpage, Thrive Architect causes that he is simpler.
Although I insist, is worth for any type of site.
We arrive at which can more be the installed visual maquetador in WordPress. The reason? He is the one that is including in many of the groups of Themeforest.
And there it is where it is his great advantage: when extended being so it is very easy to find the solution to any problem that appears.
It is translated the Spanish.
You can add addons to him of third parties.
You have updates of by life.
It has some beats? Unfortunately yes. One is a somewhat old tool and in which if you add many elements, the speed of load of your webpage will be affected.
Luckily, it counts on a gratuitous version so you can prove it and always see what so works.
With this visual publisher he passed something very peculiar. At the outset, he was available for the buyers of groups in Elegant Themes and only worked only with his designs.
Now the opposite is right. That is to say, Divi Builder purchases (that are compatible with almost any group) and include the designs and plugins to you of Elegant Themes.
Meaning that in a single payment, you take one of best page to builder much more for WordPress and.
The problem? That all that package is expensive (has a price of 89$ to the year) although if you know clearly that Divi is what you look for, you have the option to pay a single time 249$.
It is an alternative to consider since, in the long run, it supposes a quite interesting saving to you.
Extended leaves of absence: you can use Divi in so many pages as you want.
Updates and support: endless while you are member.
Tests A/B: it allows this functionality and thus to know what design works better.
And although it does not count on gratuitous version, in his official page you have one demo online so that you see everything what can do.
I nothing else do not have to tell you€¦ For me, these are the best visual publishers for WordPress that there is nowadays.
But it is enough of which only I speak, now I want to know your opinion.
What publisher you use? You are to favor or against this type of tools? You know other that is not in the list and that is worth the trouble?
I want to also listen to you and for that, you have the commentaries more down.
I wait for You in them!
Esther September 7, 2018 to 2:50 p.m.
Good comparative of all the pages builders. There is some other visual publisher who is not needed to install as plugin? I am using Themes Generator that allows to raise my group me WordPress without installing plugin and free.
to tropicalserver September 7, 2018 to 3:50 p.m.
Hello Esther, we did not know Themes Generator, we will consider it for future comparative! We do not know no other that does not settle the future as plugin with the exception of Gutenberg which as you know it will come integrated in WordPress. A greeting.


Precision football offer high performance training products at affordable prices. The range of Precision Training Football Equipment includes training ground equipment, footballs and goalkeeper gloves.
Precision Training is the official training equipment suppliers to the Irish Football Association and the Football Association of Wales. They have also teamed up with the McDonalds Kick Start initiative. Amateur football clubs, coaches and players can train like the professional thanks to the product development that is gained from working with these partners.
The new Precision Pro-range takes the choice of training aids and accessories to another level. Whether you aim to improve on your stamina, skills or speed and agility the Pro Range covers all bases.
The majority of the range of Precision Training Aids and Footballs are available at The Soccer Store. If you need a product that is not shown on our website then please let us know and we will source it for you.


text:
UK Plug-In Car Sales Surpass 2014 Total In Just Six Months
Registrations of plug-in cars have accelerated rapidly over the first six months of 2015, growing 256% against the same period last year and surpassing the 2014 full-year total with six months to spare.
New analysis by Go Ultra Low shows that motorists are switching on to the money-saving benefits of buying a plug-in electric vehicle. From January to June, 14,586 new registrations of ultra low emission vehicles (ULEV) were made, a significant year-to-date increase on the 4,096 of the same timeframe in 2014.
The record volumes exceed last year's 14,498 annual total registrations of vehicles eligible for Government's Plug-in Car Grant, the highest volume ever at the year's halfway point. The same comparison of January-June registrations for 2014 against 2013 saw an increase of 163%, the robust rises emphasising the sustained and increasing scale of the UK electrically-powered vehicle market.
Government expectations that 5% of new car registrations (around 100,000 units) will be ultra low emission by 2020 look to be achievable at the current rate of growth. With 35 plug-in cars and vans currently on the market, the variety and scale of choice is contributing to the rapid growth.
With running costs of plug-in cars significantly cheaper than petrol or diesel-powered alternatives, a money-saving end goal could be the driving force behind the surge in electric vehicles' popularity. Electric cars can be driven for as little as 2p per mile, compared with 10-12p for a conventionally powered car. Furthering their appeal, the variety of city, family, SUV and sports cars provide the practicality motorists crave, while boasting up to 700 miles range.
Plug-in bestsellers
The newest stats reveal that Mitsubishi leads the new registrations charge, with 7,255 of its flagship Outlander PHEV sold since the start of 2015. Nissan follows with its all-electric LEAF racking up 2,964 registrations, almost twice the 1,760 recorded at the same stage in 2014, and BMW's i3 is the nation's third most popular ULEV, also nearly doubling its registrations tally with 1,111 registrations.
UK top ranked ultra low emission cars for year-to-date 2015
Rank Ultra low emission vehicle 2015 year-to-date registrations
1 Mitsubishi Outlander PHEV 7,255
2 Nissan LEAF 2,964
3 BMW i3 1,111
Regional registrations
The South of England leads all other regions on volumes of uptake. With more than 3,000 cars and vans registered there for the year-to-date, it makes the south the epicentre of plug-in motoring, while the South West takes the prize for growth (increasing its electric vehicle purchases by more than 400% from January-June). Every region of the United Kingdom recorded a year-to-date increase in registrations London boasted the second-biggest regional volume with more than 2,500 registrations, while the East ranked third topping 2,000 plug-ins.
UK regions 2015 vs 2014 year-to-date registrations by growth
UK region 2015 year-to-date registrations 2014 year-to-date registrations % Change
South West 478 92 420%
East 2126 422 404%
South 3088 679 355%
Wales 351 100 251%
East Yorkshire/Lincolnshire 145 44 230%
Yorkshire 872 273 219%
West Midlands 2034 657 210%
Northern Ireland 253 82 209%
North West 956 311 207%
East Midlands 346 113 206%
London 2505 826 203%
South East 336 117 187%
North East And Cumbria 576 221 161%
West 330 129 156%
Scotland 715 314 128%
Plug-in Car Grant
At least £200 million has been made available to continue the Plug-in Car Grant from 2015-2020. Government is currently reviewing how the plug-in car grant is structured. Following this review, new levels of grant will be available based on each car's CO2 emissions and the electric range of the vehicle.
Jul 16, 2015 Blagojce Krivevski
BorgWarner Acquires Electric Motor Maker Remy InternationalRenault Updates ZOE And Twizy Trim Levels
New collaborative project to optimise EV power density, efficiency and cost through advanced materials
European EV sales up 119 percent in September
July 16, 2015 Electric Car Newsplug-in car sales, plug-in cars, plug-in sales, UK, UK Plug-In Car Sales, UK Plug-in sales


I Feel Like …… I AM PAYING TOO MUCH TAX!
I Wonder If ….. I AM CLAIMING EVERYTHING I AM LEGALLY ENTITLED TO?
Which is the best for me? ….. PARTNERSHIP, COMPANY, SOLE TRADER OR TRUST?
Is There An Easy Way? TAX RETURNS BY EMAIL!
Is there any protection for me? TINZ!
PARTNERSHIP, COMPANY, SOLE TRADER OR TRUST?
The material on this web site is copyright ©2005 by Stephen Taylor and Glenfield Tax Accountants.
If you copy material from this web site, our reports, or articles for use in any printed or electronic media please ask permission first by email.


Stream and download the entire North Dakota Garbage Man album for free via SoundCloud.com!
On his album North Dakota Garbage Man, Ray Neuhalfen tells in his uniquely comical style about cooking for his daughter, helping his dad, dealing with his ex-wives, handling Facebook, being on trial, calling bingo, breaking bones, quitting smoking, and having the Greatest Job in the World. Stream and download the album for free!


text:
Q: Apache Pig: Does ORDER BY with PARALLEL ensure consistent hashing/distribution? If I load one dataset, order it on a specific key with a parallel clause, and then store it, I can get multiple files, part-r-00000 through part-r-00XXX, depending on what I specify in the parallel statement.
If I then load a new dataset, say another day's worth of data, with some new keys, and some of the same keys, order it, and then store it, is there any way to guarantee that part-r-00000 from yesterday's data will contain the same keyspace as part-r-00000 from today's data?
Is there even a way to guarantee that all of the  records will be contained in a single part file, or is it possible that a key could get split across 2 files, given enough records?
I guess the question is really about how the ordering function works in pig - does it use a consistent hash-mod algorithm to distribute data, or does it order the whole set, and then divide it up?
The intent or hope would be that if the keyspace is consistently partitioned, it would be easy enough to perform rolling merges of data per part file.  If it is not, I guess the question becomes, is there some operator or way of writing pig to enable that sort of consistent hashing?
Not sure if my question is very clear, but any help would be appreciated - having trouble figuring it out based on the docs.  Thanks in advance!

A: Alrighty, attempting to answer my own question.
It appears that Pig does NOT have a way of ensuring said consistent distribution of results into files.  This is partly based on docs, partly based on information about how hadoop works, and partly based on observation.
When pig does a partitioned order-by (eg, using the PARALLEL clause to get more than one reducer), it seems to force an intermediate job between whatever comes before the order-by, and the ordering itself.  From what I can tell, pig looks at 1-10% of the data (based on the number of mappers in the intermediate job being 1-10% of the number in the load step) and gets a sampled distribution of the keys you are attempting to sort on.
My guess/thinking is that pig figures out the key distribution, and then uses a custom partitioner from the mappers to the reducers.  The partitioner maps a range of keys to each reducer, so it becomes a simple lexical comparison - "is this record greater than my assigned end_key? pass it down the line to the next reducer."
Of course, there are two factors to consider that basically mean that Pig would not be consistent on different datasets, or even on a re-run of the same dataset.  For one, since pig is sampling data in the intermediate job, I imagine it's possible to get a different sample and thus a different key distribution.  Also, consider an example of two different datasets with widely varying key distributions.  Pig would necessarily come up with a different distribution, and thus if key X was in part-r-00111 one day, it would not necessarily end up there the next day.
Hope this helps anyone else looking into this.
EDIT
I found a couple of resources from O'Reilly that seem to back up my hypothesis.
One is about map reduce patterns.  It basically describes the standard total-order problem as being solvable by a two-pass approach, one "analyze" phase and a final sort phase.
The second is about pig's order by specifically.  It says (in case the link ever dies):

As discussed earlier in "Group", skew of the values in data is very common. This affects order just as it does group, causing some reducers to take significantly longer than others. To address this, Pig balances the output across reducers. It does this by first sampling the input of the order statement to get an estimate of the key distribution. Based on this sample, it then builds a partitioner that produces a balanced total order...
  An important side effect of the way Pig distributes records to minimize skew is that it breaks the MapReduce convention that all instances of a given key are sent to the same partition. If you have other processing that depends on this convention, do not use Pig's order statement to sort data for it...
  Also, Pig adds an additional MapReduce job to your pipeline to do the sampling. Because this sampling is very lightweight (it reads only the first record of every block), it generally takes less than 5% of the total job time.


text:
[Montana, Wyoming, Dakota, Upper Missouri River] ...
Philippe Marie Vandermaelen
[Montana, Wyoming, Dakota, Upper Missouri River] Amer. Sep. No. 40. Partie De Etats Unis
Brussels / 1825
Request Info Download Hi-Res Image File - $29.95
The Upper Missouri River and Yellowstone River in 1825
Fine large format map of the region extending from the Big Bend in the Missouri River to the Big Horn River, centered on Montana and the western part of the Dakotas. This area of the Midwest and Rocky Mountains is labelled part of the Oregon Territory.
The map provides a tremendous and highly detailed region of the lands traversed by Lewis and Clark only a decade after the official map of the expedition was first published in Philadelphia. The river and mountain systems in the region are covered with tremendous detail, as is the illustration of the Indian villages in the region. Extensive annotations in French appear throughout the map, describing geographical features primarily related to the courses of rivers . The estimated populations of several Indian tribes are also given.
A truly remarkable and highly detailed map. This map originally appeared in Vandermaelen's remarkable six-volume atlas, which if combined as globe gores forms an immense globe. This accomplishment formed the first atlas mapping of the world on a uniform scale.
Original hand-color in outline. Minor uneven toning.
Philippe Marie Vandermaelen Biography
Philippe Marie Vandermaelen (1795-1869) was a Belgian cartographer and geographer known for his pioneering use of technology and his leadership in establishing the important Establissement geographique de Bruxelles. Born in Brussels, Philippe was obsessed with maps from a young age. He taught himself mathematics, astronomy, and mapmaking and plotted the battles of the Napoleonic wars avidly. He took over his father's soapmaking business briefly in 1816, but then turned it over to his brother in favor of cartography.
From 1825 to 1827, he released his first atlas, the Atlas universal, which was well received. It was sold in forty installments of ten maps each, with 810 subscribers listed. The atlas contained 387 maps in six volumes at a uniform scale of 1:1.6 million. The maps were intended to be joined and together would create a globe 7.755 meters wide. It was the first atlas to show the entire world on a large uniform scale and was the first atlas produced using lithography. This project served as Vandermaelen's gateway into intellectual life, gaining him membership in the Royal Academy of Sciences and Belles-Lettres of Brussels (1829).
In 1830, Vandermaelen inherited a laundry from his parents which he converted into the Establissement geographique de Bruxelles, or the Brussels Geographical Establishment. His brother, Jean-Francois, also established a botanical garden on the site. The Establishment had its own lithographic press, one of the first to use the technology for cartography and the first in Belgium. They produced textbooks, surveys, and especially maps of Brussels to be used for urban planning. The complex also housed schools, an ethnographic museum, and a library open to the public. Vandermaelen was passionate about geographic education and saw the Establishment as an open place where people could learn about the world.
In 1836, he was knighted for his services to geography and the intellectual community of Belgium. He died at age 73 in Molenbeek-Saint-Jean, near the Geographical Establishment that he founded. After Vandermaelen's death, the Geographical Establishment declined, closing its doors in 1880. The extraordinary collection they had amassed passed to several institutions, most importantly the Royal Library of Belgium.
Antique Maps / United States / Plains / Plains
Antique Maps / United States / Rocky Mountains / Rocky Mountains
Johnson's Nebraska & Kansas
Early map in the series of Johnson's maps of this region, the first edition to include Colorado Territory.
Johnson's Nebraska, Dakota, Colorado Idaho & Kansas (First Appearance of Idaho Territory / Including The Future Montana & Wyoming Territories!)
The Earliest Appearance of Idaho Territory--Including The Future Montana & Wyoming Territories
Texas and Part of Mexico & The United States, showing the Route of the Santa Fe Expedition
Map of the Republic of Texas, which appeared in Kendall's Narrative Of The Texan Santa Fe Expedition ....
Californien, Oregon, Utah Und Neu-Mejico
Highly detailed Map of the western Territories beyond the Rocky Mountains, immediately prior to the discovery of Gold in California.
Map of the Western & Middle Portions of North America To Illustrate the History of California, Oregon and the other Countries on the North-West Coast of America By Robert Greenhow . . .
Detailed map of the Western part of North America, illustrating Robert Greenhow's early work on the west.
Carte Des Etats-Unis Du Mexique . . . 1829
One of the best large format maps of Mexico, Texas and Upper California to appear in a commercial atlas in the 1820s.