text:
Become A Turtle Friend?
www.turtlefriend.org
Watch, track, and protect sea turtles…LIVE!
In early 2014, two eight-year-olds (Jonas & Matson) came to us with the vision of creating an app to broadcast the life cycle of sea turtles in the Pacific. They called it "Turtle Friend" and their goal was to create an education and fundraising tool for sea turtle conservation.
An app & website that:
broadcasts live nesting events, sea turtle egg hatchings, and other important parts of the life cycle of sea turtles.
tracks sea turtles via satellite transmitters and displays their location in the ocean
provides biological information on sea turtle species
Why Turtle Friend?
Sea turtles have been living on this planet for over 100 million years! But now, because of human impact, they are struggling to survive and some are near thebrink of extinction.
The Pacific coast of Nicaragua has some of the most important sea turtle nesting beaches in Central America. In a single night, thousands of female olive ridley turtles crowd the beach to lay their eggs in one of the greatest natural events on the planet. The nonprofitPaso Pacifico and community partners are working together to protect these and other threatened turtle species.
Turtle Friend will help tell this story….LIVE! By bringing the global community's attention to the importance of these animals in a new and engaging way we can help protect this important piece of our natural history.
Okay, how does Turtle Friend work?
To realize Jonas and Matson's dream, Turtle Friend will be both an app and website where you will be able to watch (LIVE) sea turtles at various stages of their life cycle and track them via satellite transmitters on their migrations through the Pacific.
Live Stream: Imagine watching a live stream of THOUSANDS of sea turtles coming to shore to lay their eggs in one of the greatest nesting events on the planet. Turtle Friend will broadcast events like these using HD video cameras connected to the Internet live streaming via Ustream. Ustream is one of the leading video streaming platforms and will provide us with the technology to share these live broadcasts worldwide.
Satellite Tracking: Turtle Friend will also track sea turtles via satellite transmitters on their migration throughout the Pacific ocean. Paso Pacifico's team in Nicaragua have extensive experience attaching these satellite transmitters to the backs of sea turtles. Once attached, these transmitters will send a signal via satellite to a web-based tracking system. The Turtle Friend app will then display these turtle's location, distance traveled, and biological information.
What's this gonna cost?
Funding goal: $25,000
– $9,000 – website & app development and maintenance for 3 years
– $5,500 – 3 years of staff time for broadcasting & maintenance.
– $3,500 – 3 year livestream account via U-Stream.
– $3,000 – cameras
– $1,500 – perks
– $1,250 – Kickstarter fee
– $1,250 (ish) – credit card processing fee
Total = $25,000.00
pasoblogBecome A Turtle Friend? 04.13.2015


text:
'The Rachel Maddow Show'for January 29, 2009
Guest: Matt Yglesias, Michael Isikoff, Dan Rather, Mary Mitchell, Kent Jones
RACHEL MADDOW, HOST: I will. Thank you for suggesting that, Keith. And I have to say, as a fan of "COUNTDOWN," it is very cool to see the two halves of your TV personality coming together like this. It's been very fun.
KEITH OLBERMANN, "COUNTDOWN" HOST: Thank you, kindly.
MADDOW: Thank you, Keith. Thank you.
And thank you for staying with us at home for the next hour.
A head-spinning day of news today. The guy who was Governor Rod Blagojevich at 4:00 o'clock today—is now just a guy in Chicago hoping he doesn't go to jail.
And—while the economy has us focused on the troubles here at home, the war in Afghanistan is sort of big trouble, too. Mr. Dan Rather has just returned from that war zone. He has a new documentary out about it and he will be with us tonight live here in studio.
But first, we've had four straight months of unrelentingly bad economic news—news so bad it's scary. What changed in the past week is not how bad the economic news is, what's changed is that we know a lot more about what the politics are going to be like around the government's efforts to fix how bad the economy is. The fight over how and whether the government can cure us is on. The diagnosis of what we need to be cured of, however, is sort of settled.
A new report out from the congressional panel that's overseeing the financial system bailout identifies the essential cause of our economy bleeding from the eyes for four straight months now as rampant deregulation. Quote, "The current crisis should come as no surprise. The present regulatory system has failed to effectively manage risk, require sufficient transparency and ensure fair dealings." In other words, in the bumper car world of capitalism and finance, the government took the bumpers off the bumper cars which turned the whole thing into a demolition derby instead.
Against that assessment of how we got ourselves into this measure, there were two fairly breathtaking news items today. First, the "New York Times" reported that in 2008 -- in the year in which the Dow Jones Average lost 34 percent of its value, it lost $7 trillion in wealth—in 2008, Wall Street employees took home over $18 billion in bonuses. That means, in the worst year for the Dow since 1931, it was the sixth best year ever for bonuses on Wall Street.
Now, I'm no economist but that is, -- there's a technical term for this. What is it? Oh, yes, wrong—that's wrong. President Obama called it "shameful" and the "height of irresponsibility."
The other bit of breathtaking news on this latest bad economic news day is that today was occasion for a very awkward attempted victory lap for congressional Republicans. They congratulated themselves publicly for coming up just 56 votes short in their efforts to block the economic stimulus plan from passing the House of Representatives—a victory lap for coming as close as they could come, as an otherwise powerless minority caucus to blocking the stimulus, trying to block the government from trying to save the economy by stimulating demand at the beginning of the second year of the sharpest recession since the depression.
Republican Minority Leader John Boehner put out a "hip, hip, hooray" memo about the vote. He said, quote, "The vote last night sent a clear, powerful and bipartisan message to congressional Democratic leaders about the current version of the economic stimulus package." Apparently, the new definition of bipartisan is every single Republican voting against it. If that's bipartisan, what's partisan?
After their victory lap, inexplicably, their victory lap about voting 100 percent no on something that passed anyway without them, House Republicans packed up their bags and headed to Hot Springs, Virginia, for a retreat, a weekend retreat to bask presumably in the glow of "no." They are apparently afraid of the "in the wilderness" headlines that a retreat to western Virginia will undoubtedly generate.
Well, now, it's the Senate's turn. And Senate Republicans are indicating that they are really psyche to vote no as well.
SEN. JIM DEMINT, ® SOUTH CAROLINA: Every Republican in the House rejected this, and I think every Republican in the Senate might do as well.
MADDOW: So, huzzah for fighting against the economic stimulus. Rally around the deflating balloon, everyone.
As they celebrate their legislative defeat, Republicans might want to notice what's going on across the aisle, where Democrats who made concessions to their Republican colleagues to try to get a bipartisan stimulus bill by adding in tax cuts, by taking out stimulus spending that Republicans decided to make fun of, they were rewarded by zero Republican reachback in the direction, zero votes. Hell hath no fury like a majority party scorned.
Today, White House Press Secretary Robert Gibbs warned Republicans that while their no vote might have felt good ideologically, it may leave them with some major explaining to do back at home. Quote, "There will be people in the districts all over the country that will wonder why when there's a good bill to get the economy moving again, why we still seem to be playing political gotcha." The White House reportedly plans to release state-by-state jobs figures to show exactly what sort of job creation plan each member of the House voted against.
A coalition of progressive groups has decided to take it a step further, launching an advertising campaign to pressure Senate Republicans to support the bill. This is the ad, for example, that is targeting Republican Senator Chuck Grassley in Iowa.
(BEGIN VIDEO CLIP, CAMPAIGN AD)
PRES. BARACK OBAMA, UNITED STATES OF AMERICA: We start 2009 in the midst of a crisis unlike any we have seen in our lifetime. That is why I have moved quickly on an American Recovery and Reinvestment Plan, a plan I am confident will save or create at least 3 million jobs. The first job of my administration is to put people back to work and get our economy moving again.
ANNOUNCER: Tell Senator Grassley to support the Obama plan for jobs, not the failed policies of the past.
MADDOW: According to the HuffingtonPost.com today, the goose egg that House Republicans put up on the board yesterday when the House voted on the stimulus—it may be leading to a revolt among Democrats in Congress as in, why should anything that was added into this bill against the interest of what Democrats thought was right for the country, why should anything that was added into the bill just for the purpose of attracting Republican support, why should anything like that still be in the bill now as though Republicans are going to support it anyway?
From "Huffington Post" today, quote, "'That's what my members ask me,' said Speaker Pelosi. 'It wasn't something that was suggested by Democrats.
It was a heavy lift for our members.'"
So, did the retreating House Republicans actually do Democrats a favor by voting against the stimulus bill? Might it now be stripped of the tax cuts, injected with more infrastructure spending, might it become a new and improved stimulus bill that is both good policy and good politics?
Joining us now is Matt Yglesias, fellow at the Center for American Progress.
Matt, thank you so much for coming on the show tonight
MATT YGLESIAS, CENTER FOR AMERICAN PROGRESS: Thanks for having me.
MADDOW: Republican Senator Jim DeMint predicted today with a big grin that zero Senate Republicans will support the stimulus bill just as zero House Republicans did. Bipartisanship assumes two willing parties if you look at the definition of it. Are Republicans going to object no matter what is in this bill?
YGLESIAS: Well, it seems clear that most of them will. I think in the Senate, you know, most senators, at least, have more competitive districts than you have in the House. So, there's a chance that some of them will come around, go with the Democrats, and support President Obama.
But I think the House Republicans made it clear that even though several concessions were made to them, both in advance and then during the debate over the bill, that still, none of them voted for it. You see that, as a party, as an institution, the Republicans and the conservative movement are not really interested in cooperating on this.
MADDOW: Well, have they now given Democrats an opening to drop all of the measures that Democrats added because they thought they would make Republicans happy, things like tax cuts, things like taking out some of the spending. Have they given Democrats an opening to just go all out on things like infrastructure investment and other things that the Republicans had objected to?
YGLESIAS: I think they have. I mean, there's room for tax cuts in the stimulus bill. And many of these tax cuts are targeted carefully at low income people, at working people. And I think that's good policy, it's good stimulus policy and it's equality policy.
But there's a lot of business tax cuts put in there which would put in with the idea of making it more palatable to Republicans. But then, I think, most Democrats and most progressives don't think are the best possible policy. And If Republicans aren't going to support it no matter what you do, then it makes a lot of sense to look at that and look at putting more infrastructure projects in, look at more tax cuts weighted at working people and less of this kind of business stuff, some of these corporate tax breaks that would really put in as sweeteners for the GOP and that's gotten them nothing.
MADDOW: Well, despite Jim DeMint's predictions, we are seeing pressure on individual Republican senators, three of whom are going to up for re-election in the next round of—in the next elections in two years from these outside groups. Are Republicans susceptible to advertising like that in their districts or will that be used as a badge of honor by these Republicans to defend what they've done?
YGLESIAS: Well, you know, there are several Republican senators who are representing states that Barack Obama won last November. And President Obama is more popular now than he was back then. So, I think, those senators, at least, will have to think long and hard before kind of standing with Rush Limbaugh and their House colleagues on this.
MADDOW: Matt, one of the things that we expect after the stimulus, we've seen the TARP debates through this Congress, we have seen the stimulus debate which is ongoing. It will take some more time. The next big thing we expect on the economy, in all likelihood, is a big round of financial regulation. And that's where we get into the really big, huge, thorny ideological fights between the left and right, between Republicans and Democrats.
Is there anything that we can anticipate about the fight over financial regulation based on what's happening politically around stimulus?
YGLESIAS: Well, I think, we can see that it's just going be very difficult to make the sort of bipartisan legislation that the president has hoped for. That, you know, the Republicans, I think, they look at 1993 and '94 when they just opposed everything. They opposed health care reform; they opposed the budget plan that brought us that great prosperity of the 1990s. And they were rewarded politically. They made President Clinton out to be a failure in that first legislative term. And obstructionism was rewarded in the '94 midterms.
And I think we're going to see an effort to repeat that—that almost no matter what Obama puts on the table, I think, the majority of Republicans will oppose it. You know, Rush Limbaugh has said that, you know, he hopes Obama fails, that they should vote no on everything. So far, the House Republicans are really marching in lockstep behind those orders. And I think a lot of the senators will, too.
MADDOW: Is there anything the Democrats can do to make obstructionism not fail for the Republicans?
YGLESIAS: Well, we'll see. I mean, the president can use the bully pulpit. He is extremely popular now. The crisis facing the economy is palpable. I mean, I think, people realize that they are losing their jobs, their neighbors are losing jobs. Stores are closing.
So, you know, he can bring a sense of urgency and a sense of sharpened distinctions to this. His first instinct has been to try to reach out, but, of course, if that hand just gets slapped away, then you need to fight back.
MADDOW: That's exactly right.
MADDOW: Matt Yglesias, fellow at the Center for American Progress, great insight. Thanks for being here tonight.
YGLESIAS: Thanks for having me.
MADDOW: Karl Rove has been subpoenaed to testify before Congress—again—to tell what he knows about possible misdeeds in the Bush administration. Now, up until now, Karl Rove has refused to cooperate with congressional inquiries. But this time, he doesn't have President Bush to back him up, or does he? "Newsweek's" Michael Isikoff will join us next to talk about some shocking news about President George W. Bush's latest attempts to muzzle his own troops.
And, as President Obama ponders sending 30,000 more troops to Afghanistan, I am pleased to be joined by a veteran journalist who knows more about that increasingly scary part of the world than almost anyone, at least by virtue of the fact that he has just returned from there. Dan Rather will be right here with me later.
But first, one more thing about a flat-out crisis that tax cuts can't fix but smart-spending could. As of today, 1.3 million American homes and businesses are still without electrical power, in states like Oklahoma, Arkansas, Kentucky, Illinois, Ohio and Virginia. Some customer could reportedly be waiting for the lights to come on until mid-February. Mid-February?
It's all because of the shocking surprise attack of a winter storm in winter. You know, I have been crunching the numbers all day and I think I can safely say now, correct me if I'm wrong here, but I think I can safely say that among the zero Republican members of the House who voted against the stimulus and its infrastructure funds to, I don't know, upgrade the electrical grid, among those zero Republican "yes" votes were precisely zero Republican members of Congress from states where our aged electrical system got knocked out this week by ice and snow.
So, congratulations zero Republicans. I'm sure your constituents will be psyched once their electricity comes back on next month and they learn how you voted.
MADDOW: It has been nine days since Barack Obama was inaugurated as our first African-American president. Congratulations are surely still coming in to the new commander-in-chief from all over the world but not from the Arkansas House of Representatives. A majority of members of the state agencies committee in the Arkansas House, this week, rejected a symbolic resolution congratulating President Obama on his election.
Why no way to go from the "Land of Opportunity"? Well, apparently, the no voting members objected to language in the resolution that referred to the U.S. as, quote, "a nation founded by slave owners." Now, admittedly, that is objectionable. I mean, it is really objectionable that founding fathers like George Washington and Thomas Jefferson and Ben Franklin owned slaves.
But they can't seriously mean that it's objectionable to admit that, to admit that those guys owned slaves. They can't seriously think that, can they?
MADDOW: Despite tinfoil, hat-wearing conspiratorial predictions from jerks like me, former President George W. Bush did not issue any sort of last-minute preemptive pardons before he left office—pardons for people in his administration who might expect to be investigated and maybe even criminally prosecuted for breaking laws while they held in office; people, who've, say, directed policies like spying on people without warrants, torturing prisoners, illegally politicizing the administration of justice using federal prosecutors for political partisan end. Well, no preemptive pardons before Bush left office.
But, according to a brand new exclusive record from "Newsweek's" investigative correspondent, Michael Isikoff, with four days left in office, then-President Bush did issue preemptive immunity. Preemptive immunity? Yes, preemptive immunity to his former aides Harriet Miers and Karl Rove.
How can the new government clean itself of the stains left by the last government if the last government has immunity-granting power from the afterlife? It's time for THE RACHEL MADDOW SHOW special series on President Obama's cleanup missions: Scrub, Rinse, Repeat—because this is going take a while.
John Conyers, the chair of the House Judiciary Committee subpoenaed Karl Rove, the man known as Bush's brain, to testify about the Bush administration's firing of nine U.S. attorneys and the allegedly partisan motivated prosecution of Democratic Alabama Governor Don Siegelman. Now, this was Karl Rove's second congressional subpoena. And, for the second time, Mr. Rove is claiming that George W. Bush has directed directing him not to appear.
According to Mr. Isikoff's reporting in "Newsweek," on January 16th, Bush's White House counsel, Fred Fielding, sent a letter to Mr. Rove's lawyer, relaying this message, quote, "The president continues to direct him not to provide information to Congress."
Now, again, I did a little calculating in the commercial break and if my math is correct, I think that George W. Bush isn't president anymore. So, since he is not president anymore, he's just citizen George W. Bush, how can he immunize anyone from anything?
Joining us now is Michael Isikoff, "Newsweek's" investigative correspondent.
Mr. Isikoff, nice to see you. Thank you for your time tonight.
MICHAEL ISIKOFF, NEWSWEEK: Good to see you, Rachel.
MADDOW: Four days before he left office, you are reporting that President Bush specifically instructed Karl Rove to refuse to appear before Congress. What did he say and can he do that?
ISIKOFF: Well, very good question about whether he can do it, and we certainly didn't see this one coming.
As I discovered today, there was this letter sent by Fred Fielding, the White House counsel, on January 16th, instructing Rove in anticipation of that he might receive future subpoenas, the president wanted him to know that he should not honor such subpoenas. He should not appear before Congress. He should not turn over any documents that he—the president was still asserting executive privilege over anything Rove did in the White House, and that the president wanted to assert this in perpetuity even after he leaves office.
I talked to some constitutional scholars today who say, as far as they know, this is unprecedented for a president about to leave office to make such a sweeping claim to extend to his former aides after they are no longer in the government. But it is part of the aggressive assertions of executive privilege that the Bush White House exerted throughout its tenure.
MADDOW: I am not an expert on this stuff, but what this sounds like to me is that President Bush is saying that anybody who works for the president is immunized and they're immune from having to respond to congressional subpoenas not only for the time that they are working for the president but for the rest of their lives. That's what he's saying?
ISIKOFF: Well, that seems to be what they're saying. And what's key here is immunity. There's nothing unusual for presidents to assert executive privilege about conversations, particular conversations that they might have had with senior aides. But what the Bush White House asserted was—and a version of executive privilege that went considerably beyond that—that aides had total, absolute immunity. Not only could they not talk about particular conversations, they didn't have to show up at all in response to a congressional subpoena.
And so, you saw Harriet Miers not show up, Josh Bolten not show up when they got subpoenaed, and Karl Rove himself. In fact, in one case, Karl Rove was flying off to give a speaking engagement in the Ukraine, I believe, when he was supposed to be appearing before Congress to testify. So, this assertion, this interpretation of executive privilege goes considerably beyond what previous presidents have asserted and is now the subject of a court challenge in the case of Harriet Miers and Josh Bolten.
I think that the disclosure that Fred Fielding had sent this letter, sort of joins the battle and shows just how far the Bush White House went and it's now—what's going to be particularly interesting here is in that court battles before the U.S. Court of Appeals, the Obama Justice Department—whose attorney general is not yet confirmed, but will probably be on Monday—has to provide a position in the next couple of weeks about what its position is, the new president's position on executive privilege. And I think it's a safe bet it's not going to go as far as the Bush White House went.
MADDOW: Yes, it's one thing to "L'etat, c'est moi," it's another thing to have the power to prevent everybody else in the country from laughing at you when you assert that.
ISIKOFF: Right.
MADDOW: It'd be fascinating to see how the Obama administration responds.
Well, Mike, congratulations on the scoop, and thank you for joining us tonight.
ISIKOFF: Thank you.
MADDOW: Michael Isikoff is "Newsweek's" investigative correspondent.
Just a few hours ago, the Illinois State Senate voted 59 to zero to impeach Governor Rod Blagojevich, ousting him from office and ending one of the most compelling and dramatic falls from bleeping grace in modern political history. Before the curtain came down, the now ex-governor delivered his "swan song," a heart-tugging hour long aria of innocence falsely accused. We will review the ousting of Blagoro (ph) later.
BLAGOJEVICH: Coming up in just a few moments: Dan Rather will be here to discuss his new hour-long documentary about what exactly it is that we are doing in Afghanistan. Trust me, you will want to see this.
First, though, it's time for a couple of underreported holy mackerel stories in today's news. We have been chronicling the Obama administration's efforts to scrub and rinse some of the proverbial stains left behind by the Bush administration. And today, we got our first indication that after scrubbing and rinsing, repeating might be in order.
Remember that executive order that President Obama signed on his second day in office last week, the one that halted all Guantanamo military tribunals for 120 days, while his administration determine what to do with the remaining detainees? Well, in a serious blow to those plans, a judge, Army Colonel James Pohl has rejected the order delay, finding its reasoning, quote, "persuasive." Colonel Poll instructed the government to proceed with the case of Abd al-Rahim al Nashiri, a prisoner accused of planning the attack on the USS Cole in the year 2000 that killed 17 U.S. service members and injured 50 more. Nashiri will face capital charges at his February 9th tribunal appearance.
The Judge Pohl wrote, quote, "The commission is unaware of how conducting an arraignment would preclude any option by the administration. Congress passed the Military Commissions Act which remains in effect. The commission is bound by the law as it currently exists not as it may change in the future," end quote.
Obama's options? Well, Nashiri's Pentagon-appointed defense lawyer said that the prosecutor could dismiss charges against Nashiri to comply with the president's request for a freeze, or President Obama could release Mr. Nashiri—that one is probably unlikely, or the tribunal could go ahead despite the president's order.
Your guess is as good as mine as to how this is going to go next. Scrub—check. Rinse—check. Repeat—yes. This one is going to go around again. Stay tuned. We will stay on it.
And retired Admiral Dennis Blair was confirmed by the Senate as the new National Intelligence Director. He's now the third intelligence director that we have had - at least we thought this was the third National Intelligence Director we'd had.
Spencer Ackerman at the "Washington Independent" points out today that Blair is actually fourth and most of us missed the very quick tenure of the guy who was third.
It happened that the Deputy Director of National Intelligence Lieutenant General Ronald Burgess had to serve as Acting Director of National Intelligence for exactly one day, because on Tuesday, outgoing Intelligence Mike McConnell up and quit before his replacement was confirmed.
Mr. McConnell sent a farewell letter to Intelligence employees but did not explain why he quit before the Senate confirmed his replacement. There has to be a reason, right? It can't be that McConnell had to take this job and shove it moment right at the end there, can it?
Well, one as to his motivation may come from the press release put out by his once-and-future company, the giant defense consulting firm, Booz Allen, which announced that Mike McConnell will rejoin his old company as head of the firm's national security practice.
Thanks to the one-day interim Intelligence Director thing, Mr. Ackerman at the "Washington Independent" notes that if some congressional commission determines that the next 9/11 came to pass because of some critical intelligence error on January 28th, 2009, we will now know who to blame. We'll know how to blame the guy who had that job for one day because McConnell couldn't wait one day to get back to making big bucks in the private sector.
This also means that DNI for a day Lieutenant General Ronald Burgess, that name becomes a $2,000-question on the super-duper advanced, elite brainiacs-only version of "Jeopardy." Make a note of it.
DAN RATHER, HOST, "DAN RATHER REPORTS": America's hopes the basic mission here may still be achievable. But wars are won by firepower, will power and staying power. The United States and its allies have the firepower. But do they, we, have the will power and the staying power for the long haul?
MADDOW: That, of course, is Dan Rather reporting from Kabul, Afghanistan, as part of his new documentary for HD Net about the state of the war there. Afghanistan is one of the poorest countries on the planet, and the place for the infant mortality rate is third-highest in the world, where fewer than one in three adults can read.
But despite its challenges on modern things like health and literacy and clean water and electricity, Afghanistan does excel at something, and it has for more than 1,000 years.
Afghanistan, of course, is known as the graveyard of empires. Alexander the Great and the mighty armies of ancient Greece couldn't hold on to it nor could the British in the 19th century, though not for a lack of trying. And after nearly 10 years, the Soviet Union fled in 1989.
Here in America, we really paid a lot of attention to that because the Soviet's defeat in Afghanistan helped get rid of the other world superpower that was our rival. Remember, back when there were two?
And now, after seven years of us fighting there, the United States military is getting ready to double down, sending in 30,000 more troops to go with the 34,000 who are already there. President Obama campaigned on the idea that Iraq - the war in Iraq diverted badly needed resources from Afghanistan from what he called the central funds in the war on terror. But as Dan Rather found when he interviewed General David McKiernan, the man in charge of our military effort there, defining victory in Afghanistan isn't easy.
RATHER: How will we know when we have, quote, "won?"
GENERAL DAVID MCKIERNAN, COMMANDER, U.S. FORCES AFGHANISTAN: Tough question to answer. I think we've got to look at global terrorism and al-Qaeda which certainly has franchises outside of this region. And we've got to continue to work in an intelligence-driven way to see what their reach is, what their impact is, not only within the region, but globally.
And over time, I think when we determine that they are marginalized, contained, perhaps even defeated, then we'll know we've won.
MADDOW: Marginalized. Contained. In fact, in Mr. Rather's documentary, it is almost jaw-dropping to hear the honesty from some of the soldiers who are under General McKiernan's command when they talk about their mission.
UNIDENTIFIED MALE SOLDIER: It was definitely winnable. It is not really a war. I mean, you are not really fighting as people. You are fighting as - you know, the Taliban is a way of life. So it is kind of hard to fight that.
MADDOW: Kind of hard to fight that anywhere, let alone in the graveyard of empires.
Joining us now is Dan Rather. He is the host and managing editor of "Dan Rather Reports." His program "The Commander" has just premiered on HD Net. Mr. Rather, thank you so much for being here tonight.
RATHER: Thank you, Rachel.
MADDOW: It's great to see you.
RATHER: It's great to be with you. Thank you.
MADDOW: When you asked General McKiernan, "When will we know we have won the war in Afghanistan?" in the rest of your interview, he answers you immediately. He never stutters. He never "uhms." He never "ahs." And you got this great pause out of him. He waited a moment before he was able to respond. How did you read that?
RATHER: I read that he's not certain himself what, quote, "win" would be, certainly not assured about what the exit strategy is. Let me emphasize he is a terrific general. He is exactly the kind of person one would want in the U.S. Military and commanding this very difficult situation.
However, he knows, and the reason he paused, and it was very insightful for him - a long pause, because he wanted to give a truthful answer. But he also wanted to give an answer that had at least some semblance of optimism in the answer.
But I think it's clear that we're in a stage and I think we're still in this period - won't be for long - in which policy is being reviewed from the bottom up. I think a new policy, a new strategy and some new tactics will be forthcoming.
I would be surprised if they are not forthcoming fairly quickly. That's part of what's doubling down, as you said, the troops. And I like the phrase, because it's just about doubling the number of troops there is all about.
MADDOW: Thinking about a bottom-up review, looking at the very base level of what is happening on a person-to-person basis in Afghanistan and having its - having the strategy sort of evolve from that, rather than a top-down look. In your documentary, your producers and reporters head out with American troops who are on the border, the border between Afghanistan and Pakistan.
There is a group of about 30 troops who are in charge of patrolling an area that is 10 times the size of Manhattan. And to me, that says two things - incredible bravery and ingenuity and the question of whether or not it is folly. What can they accomplish?
RATHER: And believe me, the troops discussed this among themselves. They do in our program. They're very dedicated. They're doing the thing asked of them. But they know the size of this challenge. They also know that while we, you and I here tonight talking about Afghanistan, the core problem the heart - the red, beating heart of this problem is in Pakistan, right across the border in those territories west of Peshawar.
And I'll be surprised - I am constantly surprised if Richard Holbrooke, a very experienced American diplomat who's been appointed by President Obama to be his - to answer to him personally about it. If Holbrooke doesn't say, try to make the case.
Look, we need to do things inside Afghanistan. But the gut problem is across the border in Pakistan. And I think the bottom-up review of strategy and tactics won't have to do with it. Once the snow clears in the mountain passes there is going to be a lot of killing done in that part of Pakistan.
MADDOW: Are there essentially two choices for American policymakers now? I guess three - one is, end it, bring them home. The other two are counterinsurgency, which is the way General McKiernan describes his mission to you. Counterinsurgency, as you know, is a troop-intensive prospect. That means essentially creating a legitimate government, a legitimate source of authority and a legitimate use of force in a country.
The third option is counterterrorism, which is a much smaller, more targeted mission, which is not about building up a state - which is eliminating an enemy.
RATHER: That's right.
MADDOW: Are those the three choices?
RATHER: I think those are the three choices. And I think number three is the basic choice. You can say number three, which is to say try to defeat terrorism melded with some aspects of counterinsurgency is probably where it is going.
MADDOW: Well, it is hard to imagine the melding, because one of them is sort of a police action on steroids. And one of them is a long-term occupation in a country that's never had a legitimate government.
RATHER: Well - and your point is so well-taken. The ancient Greeks, the British and Soviets tried to do a version of what we are doing. But I do feel obliged to say because it's true, that they all tried to colonize Afghanistan.
We are not seeking to colonize Afghanistan. The Soviets made no bones about it. They were coming in to take over the country. They wanted to run the country. They wanted to be there 100 or 1,000 years from now. That is not the case with what we're trying to do.
But also want to underscore that for the troops who are asked to do what we are asking them to do in Afghanistan. Imagine if 30 soldiers - 30 soldiers responsible for about 350 square miles of territory and this is wicked terrain. We're asking them to do too much.
MADDOW: One last quick question for you. As a man - as a veteran newsman, as a veteran of not only the war in Afghanistan, the current war in Afghanistan, the war in Iraq, the Soviet war in Afghanistan the '80s - you were there, how would you rate our national discussion about our security interests and what we're going to do next in Afghanistan. Are we having the right debate? Are we covering it enough?
RATHER: We are not having the right debate and we certainly are not
covering it enough. I think not having the right debate that may be in the
process of changing. But we have to keep in mind that with President Obama
he has this economic meltdown, the Middle East, Iraq, so many things.
But I do think the area of Pakistan, where most of the trouble originates, is going to wind up to be high on his agenda, and he will start spending a good deal of time on that with Richard Holbrooke's help.
MADDOW: Dan Rather, host and managing editor "Dan Rather Reports" on HD Net, such a pleasure to have you here. Thank you.
RATHER: Such a pleasure to be here. Thank you very much, Rachel.
MADDOW: Thank you. Dan Rather's next new program is called "The Castle Doctrine." It premieres on Tuesday on HD Net.
Rod Blagojevich was unanimously ousted from the governor's office by the Illinois State Senate this afternoon. Did he go quietly, humbly accepting the judgment of his peers? Are you kidding me? It is Blagojevich. He did everything but shake his fist at the clouds. Rod Blagojevich's last stand at his political Alamo, next.
MADDOW: In Springfield, Illinois, on day three of Rod Blagojevich's impeachment trial in the State Senate, the governor finally took the stand at about 11:00 a.m. Blagojevich standard time.
First, he made some news suggesting that White House chief-of-staff Rahm Emanuel should be fired. Don't hold your breath. News first, but then ultimately, he simply stuck to his guns.
GOV. ROD BLAGOJEVICH (D-IL): You guys are in politics. You know what we have to do to go out and run elections. There was no criminal activity on those four tapes. I didn't resign then and I'm not resigning now because I have done nothing wrong.
MADDOW: In the end, there was pretty much just one question left for the State Senate to answer. Knowing all that could be known at that moment, did Illinois State senators think that Rod Blagojevich should be impeached?
UNIDENTIFIED FEMALE: Yes.
UNIDENTIFIED MALE: Yes.
MADDOW: So the answer was yes. It was unanimous, 59 to zero. Rod Blagojevich convicted, thrown out of office and then for good measure, barred from taking any other political office in Illinois ever again.
Almost immediately afterward, Lieutenant Governor Pat Quinn was sworn in as the state's 41st governor, instantly becoming the answer to a really good Illinois politics trivia question in the year 2028.
Then at about 6:10 p.m., Blagojevich standard time, the former governor made his first statement as an ordinary citizen - well, an ordinary citizen under criminal investigation for corruption. Mainly, the statement was his greatest hits, but there were a couple of bonus tracks thrown in for the fans.
BLAGOJEVICH: I'm obviously saddened and disappointed, but not at all surprised by what the State Senate did today. I love the people of Illinois today now more than I ever before.
UNIDENTIFIED FEMALE: I love you, too.
BLAGOJEVICH: Thank you. And the fight goes on -
UNIDENTIFIED FEMALE REPORTER: Governor, did you ever consider resigning?
BLAGOJEVICH: No, I did not. Let me ask you a question. If I ask you guys to come and cover me if I want to say something, will you do it? Will you? Or is it (UNINTELLIGIBLE).
(CROSS TALK)
UNIDENTIFIED MALE: Will you play hoops with me in the summer?
BLAGOJEVICH: Absolutely, man. Absolutely.
UNIDENTIFIED MALE: You know, I think (UNINTELLIGIBLE) - I think it's in my right had. You know that.
BLAGOJEVICH: Let me say one more thing to the people of the Latino community. Gracias por su apoyo. Junto seremos nuestro estado mucho mejor para todos. Si, se puede.
MADDOW: Si, se puede? Joining us now is Mary Mitchell, editorial board member and columnist for "The Chicago Sun Times." Ms. Mitchell, thank you so much for coming back on the show tonight.
MARY MITCHELL, EDITORIAL MEMBER AND COLUMNIST, "CHICAGO SUN TIMES":
Thank you for inviting me.
MADDOW: Even former Governor Blagojevich seems to have accepted the conviction in the Senate today. But was the unanimous vote a surprise?
MITCHELL: No, not at all. Not at all. One reason is because you got to look at this like - think about it in terms of a gang of thugs standing on the corner, all right? As long as nobody is bringing heat, the thugs are going fine.
But as soon as one of thugs starts bringing heat, that thug has to go. And that's basically what happened in Springfield. I'm not saying that all Illinois politicians are corrupt. But pay-to-play is an old game and former Governor Rod Blagojevich knew that people in that body that was sitting in judgment of him has played that game.
So they had to get rid of him because he was an embarrassment, because he was bringing heat and attention and negative attention to the State of Illinois.
MADDOW: Are you saying that state senators had to vote unanimously to get rid of him in order to make it seem like he was the only one who ever engaged in pay-to-play in order to divert attention from their own selves?
MITCHELL: I'm not saying they had to vote unanimously. What I'm saying they did vote unanimously because they were disgusted and fed up. And there was no way to justify keeping a man given what they knew about pay-to-play.
Also, they are worried now about what's on those tapes. We have four tapes. We don't know what's on those tapes. They don't know what's on those tapes. So they wanted to make sure that they've cast a vote to get rid of the problem. And the problem in their eyes is the former governor.
MADDOW: We saw from Governor Blagojevich's public defense that he was a great name-dropper, saying he was going to call Rahm Emanuel. He was going to call Ted Kennedy. He was going to call John McCain. He was going to call Kathleen Sebelius - in a sense, trying to bring all of these people into his orbit, presumably as some sort of political insulation.
In Illinois as the Chicago - as the criminal trial looms here, are there people who are expecting, worrying that they are going to surface in that trial, that they might be dragged down with him?
MITCHELL: Well, I'm pretty sure there are people worried about that. And I'm not going to say any of those people are the people that the former governor named today in his impassioned speech on the floor.
But there are people. There have to be people who made deals because pay-to-play is so common. And I'm not justifying that. It's just common. Everybody knows that in Illinois, if you want to get something done, you better put some money in somebody's campaign.
And if you don't do that, things aren't just going to move. Illinois works on campaign dollars. So I think there are a lot of people sitting around right now who are afraid.
And here's another thing. I just don't see how some people are going to sleep tonight. Because what they did - not all of them, but what some of those people who voted today did was act like hypocrites, act like they didn't know that this kind of behavior was going on, and that is so wrong. But they've engaged in that same kind of behavior.
MADDOW: President Obama released a statement today that said, "Today ends a painful episode for Illinois. For months, the state had been crippled by a crisis of leadership. Now, that cloud has lifted."
Has the cloud lifted, or does there need to be some big ethics initiative now to really clean up after this?
MITCHELL: Well, it needs to - you need to get a cap on campaign donations. We have seen one governor go to jail for the same kind of stuff. Now, a governor has been kicked out of office. We've seen dozens of aldermen go to prison because of this kind of fraud and corruption.
So I don't think the cloud has been lifted. People have just been able to hold it off for a little while.
MADDOW: One of those clouds just started raining, maybe.
MITCHELL: Right.
MADDOW: Mary Mitchell, editorial board member and columnist for the "Chicago Sun Times." A real pleasure to have you back on the show. Thanks, Mary.
MITCHELL: Thank you.
MADDOW: Coming up on "COUNTDOWN," Karl Rove says he won't show up to testify to the House Judiciary Committee despite a subpoena. Keith asks Congressman Jerry Nadler, who sits on the subcommittee, what happens now.
And next on this show, I get just enough pop culture from my friend, Kent Jones. George and Laura Bush went to a basketball in Texas where they live now.
MADDOW: Now, it's time for "Just Enough" with my friend, Kent Jones.
Hi, Kent. What have you got?
KENT JONES, POP CULTURIST: Good evening, Rachel. Private citizens, George and Laura Bush, are downshifting comfortably into their new life in Texas. Last night, they went to a big women's basketball showdown in Waco between number four-ranked Baylor and number two-ranked Oklahoma.
Here they are with Baylor coach Kim Mulkey, getting a standing O from the locals - still love him. Before the game, Bush gave the Baylor team a pep talk. And then, he and Laura sat behind the Baylor bench during the game, cheering on the Bayers(ph).
So armed with all that support, the final score was Oklahoma 56, Baylor 51. He's still got it. Afterwards, the Baylor team asked the Bushes to come to Seattle to cheer them on for the final four which will be played in St. Louis.
Meanwhile, over at Austin, Texas, you know those big signs that display traffic information like "Warning, construction ahead, or "Expect delays"? Well, I'm guessing you've never seen one that says this.
(SIGN READS: Run for cold climates. The end is near!)
Yes, Department of Transit officials still don't know who hacked into their digital road sign system recently. Say what you want, but zombie attacks in the Austin area are down 70 percent. Infrastructure, Rachel, so important you preach it every day.
MADDOW: "Run for cold climates." I didn't know that was what you do in the face of an impending zombie attack.
JONES: Apparently, the zombies hate that. So if they like it where it's warm, you go where it's cold and you'll be fine.
MADDOW: Yet another reason why I still live in New England. I didn't even know that was it.
JONES: Exactly.
MADDOW: Thank you, Kent.
MADDOW: And thank you for watching tonight. We'll see you here tomorrow night. Until then, you can E-mail us at rachel@msnbc.com. Check out our podcast at iTunes or Rachel.MSNBC.com. You can also hear me coast-to-coast on Air America Radio. "COUNTDOWN" with the inestimable Keith Olbermann starts right now. Good night.
WATCH 'THE RACHEL MADDOW SHOW' WEEKDAYS AT 9:00 P.M. ON MSNBC.

redpajama_set_name: RedPajamaCommonCrawl


text:
← STEPHEN DUCKETT, ANIKA STOBART, WILLMACKEY.- If coronavirus cases don't grow any faster, our health system will probably cope (The Conversations 1.4.2020)
DUNCAN GRAHAM It's looking real bad next door →
JOCELYN CHEY. "People Matter" – Let's Not Make Exceptions
By Jocelyn Chey | On 3 April 2020
The corona virus emergency should bring out the best in people, but in some it is causing vicious blame-sharing. Fingers are being pointed at Chinese Australians and accusations levelled of lack of patriotism and even illegal activities.
This global epidemic requires global solutions. Australia has a chance to work more closely with the People's Republic of China to this end and should avoid relations sinking to a new low.
Reflecting on our universal desire to live in a safe society, philosopher and former Archbishop of Canterbury Rowen Williams comments in an interview for the BBC that this period is a chance for people "to settle down and think what matters to them, and who matters." Isolated in our homes, Australians think first of their family, friends and colleagues, but also, as citizens of a maritime nation, of their relatives and contacts across the seas in New York, Madrid or Hong Kong. As the viral wave of COVID-19 infection spreads across the globe, all Australians wish they could be closer to those they love, no matter where they are and could help in some way. Penned in their own homes, they fight feelings of powerlessness.
Chinese Australians, who make up five percent of the population, have been feeling this pull of family and community since they first heard of the virus outbreak in Wuhan in late December. Now there is sympathy for other Australians with relatives and friends in Europe and America, but support for those in distress in China has been notably absent. There were alarming reports of racist taunts and abuse of local Chinese throughout January and February, prompting the Prime Minister rather belatedly to state that the government placed a high value on the country's ethnic Chinese community. Nevertheless, anti-China feeling persists and it seems is being fanned by hawkish lobbyists in Canberra and elsewhere.
The Fairfax media have published several articles recently about Chinese Australian-owned businesses back in February organising shipments of surgical gloves and other medical supplies to help the Chinese fight against the Covid-19 virus. The most recent article by Nick Mackenzie and Anthony Galloway appeared in the Sydney Morning Herald on 2 April. There are reports elsewhere that the same businessman, Yuanping Kuang, named in this article, is now organising for supplies of medical equipment from the PRC to assist efforts to control the epidemic in Australia. Mackenzie and Galloway allege that this is at the direction of the Chinese Communist Party and part of a PRC soft power campaign to exert political influence in Australia.
The first outbreak of COVID-19 was in the PRC. There government measures to diagnose, control and treat it were heavy-handed, but results have shown them to be effective so that the country will recover more quickly and sooner than the rest of the world. Having stepped up production of medical equipment and hygiene products, the PRC has material and technology to share with others, and half of the world is desperately short of supplies. This week China has sent 10,000 virus kits and ventilators to Palestine, for instance, and is considering sending a medical team to assist local doctors.
Such aid should surely be welcome, but, rather, there is a growing concerted effort in the West to discredit the PRC and turn people against accepting its aid and advice. The media is making much of the fact that some PRC masks and virus testing kits are of inferior quality. (It seems some may have been privately imported and not part of a Chinese government aid package, and PRC officials have said that they originated from factories that were not certified by the government.) The US and China are engaged in tit-for-tat rounds of recriminations and blame for the outbreak and spread of the virus. It would seem wise for Australia not to involve itself in this unproductive argument, but that apparently is not understood in Canberra, where senior journalist Chris Uhlmann states, "It's a fair bet that the bulk of the population has got some key messages: that this threat came from China, that its totalitarian regime's first reaction was to lie and that Australia is far too reliant on an unreliable nation."
One regrettable result of the corona virus epidemic has been that governments everywhere are pulling up drawbridges and retreating into national isolation. The dangers of this approach are recognised by the United Nations, which this week launched a new plan to counter COVID-19. UN Chief Antonio Guterres described it as the "greatest test that we have faced together since the formation of the United Nations." "What the world needs now is solidarity. With solidarity we can defeat the virus and build a better world".
Jocelyn Chey is Visiting Professor at the University of Sydney and Adjunct Professor at Western Sydney University and UTS. She formerly held diplomatic posts in China and Hong Kong. She is a member of the Order of Australia (AM) and a Fellow of the Australian Institute of International Affairs.
Jocelyn Chey
This entry was posted in World Affairs. Bookmark the permalink.


Dr. James May Jr, MD is a general surgery specialist in Boston, MA and has been practicing for 44 years. He graduated from Northwestern U, School Of Medicine in 1969 and specializes in general surgery and cosmetic, plastic & reconstructive surgery.
How was your experience with Dr. May Jr?


text:
José de Freitas Ribeiro (* 23. Mai 1868 in Parede (Cascais); † 3. November 1929) war ein portugiesischer Fregattenkapitän, Politiker und Premierminister (Presidente do Conselho de Ministros) während der Ersten Republik.

Leben
Nach dem Schulbesuch absolvierte er eine militärische Laufbahn, in deren Verlauf er zum Fregattenkapitän aufstieg.

Später nahm er auch politische Aufgaben war. Zunächst war er vom November 1910 bis Mai 1911 Generalgouverneur von Mosambik und dann anschließend vom November 1911 bis zum Juni 1912 Kolonialminister in der Regierung von Augusto de Vasconcelos. Im Januar 1913 wurde er von Premierminister Afonso Augusto da Costa zum Marineminister in dessen bis zum 9. Februar 1914 amtierenden Kabinett berufen.

Als Mitglied der Verfassungsjunta (Junta Constitucional) vom 14. bis zum 17. Mai 1915 war er de facto Mitglied eines Premierministerkollegiums (Presidente do Conselho de Ministros).

Zuletzt war er von 1917 bis 1919 Generalgouverneur von Portugiesisch-Indien.

Weblinks
 Biografie (portugiesisch)
 Biografische Daten (portugiesisch)
 Presidents, Primeministers and Ministers of the Portuguese Republic

Einzelnachweise

Premierminister (Portugal)
Gouverneur von Portugiesisch-Indien
Geschichte (Mosambik)
Träger des Ritterordens von Avis
Träger des Turm- und Schwertordens
Portugiese
Geboren 1868
Gestorben 1929
Mann

redpajama_set_name: RedPajamaWikipedia


Come see us at our new site!
Get published at Kissed Studio with Template T0023!
Here we go again! Your chance to get published at Kissed Studio! We are busily loading templates up into our store in preparation for our June 1st opening!
THAT'S RIGHT! WE HAVE AN OPENING DATE! WOOHOO!!!
Watch this space for more details as it gets closer!
Mark your calendars and prepare to shop on June 1st!
Download the files for Template T0023. Scrap it. Post it to your favorite gallery. Then come back here and post the link in the comments section of this post! We'll gather all the posts and pick a winner or two. If you are the winner, your layout will be in the sample section for T0023 in the store! Get scrapping!!
Jezza - your layout has been chosen as the featured sample for T0018!! Congratulations! Look for it soon in our store.
Thanks everybody, for playing along!


It would be nice if that were the case, and to some extent it is, but it stems from economic woes and not from ideological differences. People, given democratic opportunities, tend to vote with their pocket books. No bread, electricity, etc is what did Morsi in more than anything else.


text:
Agreement Between Charles R. Drew University of Medicine and Science and Ross University School of Medicine Designed to Alleviate Critical Physician Shortage
Charles R. Drew University of Medicine and Science (CDU) and Ross University School of Medicine (RUSM) today announced an agreement to establish joint education programs that are expected to increase the number of physicians practicing in under-resourced areas, including in California.
The collaboration, to be announced at a signing ceremony at the South Los Angeles campus of CDU on September 12, 2018, will establish a pathway program at CDU giving preferred admission into the Doctor of Medicine (MD) program at RUSM to CDU post-baccalaureate students who meet admission criteria. Since 91 percent of CDU students are from California (with 70 percent from L.A. County) and more than 80 percent report returning to practice in underserved communities following graduation, it is likely that many of these students will return and provide much-needed care in Los Angeles.
"The intent of this exciting partnership is to take on the challenge of inadequate numbers of underrepresented minority doctors in the U.S. using novel student engagements, validated support programs, and senior level commitments to success," said William F. Owen, Jr., MD, FACP, Dean and Chancellor RUSM.
"We feel this collaboration with RUSM is a tremendous opportunity for us both to help address one of the critical healthcare issues of our time: the shortage of primary care physicians in general, and in medically underserved communities of color, in particular," said CDU President and CEO David M. Carlisle, MD, PhD. "It's a creative approach by two organizations with a common purpose."
This partnership is the first-of-its-kind for both institutions, uniting the highly regarded Southern California University with a high-quality international medical school in a common and socially-impactful purpose. RUSM has a history of educating diverse physicians with a high percentage of graduates – nearly 75 percent – choosing to practice in primary care. RUSM graduates are eligible to become licensed to practice in all 50 U.S. states, Canada and Puerto Rico, and RUSM is opening its new, permanent medical sciences campus in Barbados in January 2019.
"CDU actively seeks partnerships with educational institutions that share our mission of creating more access to medical education and graduating more healthcare professionals who will practice in chronically under-resourced areas," said CDU Executive Vice President of Academic Affairs and Provost Steve O. Michael, PhD. "We have such a partner with RUSM."
RUSM is a member of Adtalem Global Education, a mission-driven organization headquartered in Chicago that operates a portfolio of higher education institutions and professional education companies, including medical, nursing, veterinary and healthcare education institutions in the United States and internationally. Adtalem CEO Lisa Wardell, currently the only African-American female leading a Fortune 1000 company, stated, "This agreement is the embodiment of our vision to create a dynamic global community of life-long learners who improve the world. We are pleased to have RUSM collaborate with Charles R. Drew University Medicine and Science, and we look forward to the contributions these students will make to their communities as physicians."
For more information, visit http://www.cdrewu.edu/, and follow CDU on Facebook, Twitter (@cdrewu), and Instagram(@charlesrdrewu).
ABOUT CHARLES R. DREW UNIVERSITY OF MEDICINE AND SCIENCE
CDU is a private, non-profit student centered minority-serving medical and health sciences university committed to cultivating diverse health professional leaders dedicated to social justice and health equity for underserved populations through outstanding education, research, clinical service, and community engagement. Located in the Watts-Willowbrook area of South Los Angeles, CDU has graduated more than 550 medical doctors, 2,700 post-graduate physicians, more than 1,200 physician assistants, 800 nurses and over a thousand other health professionals. CDU is a leader in health disparities research with a focus on education, training, treatment and care in cancer, diabetes, cardiometabolic diseases, and HIV/AIDS.
ABOUT ROSS UNIVERSITY SCHOOL OF MEDICINE
Ross University School of Medicine is a member of Adtalem Global Education (NYSE: ATGE), a global education provider headquartered in the United States. The organization's purpose is to empower students to achieve their goals, find success and make inspiring contributions to our global community. Founded in 1978, RUSM is committed to educating a diverse group of skilled physicians to serve as leaders in the U.S. healthcare system. With more than 14,000 alumni, RUSM is an important contributor to healthcare in North America. RUSM is accredited by the Caribbean Accreditation Authority for Education in Medicine and Other Health Professions (CAAM-HP). For more information, please visit medical.rossu.edu.
The purpose of Adtalem Global Education is to empower students to achieve their goals, find success and make inspiring contributions to our global community. Adtalem Global Education Inc. (NYSE: ATGE; member S&P MidCap 400 Index) is a leading global education provider, and the parent organization of Adtalem Educacional do Brasil, American University of the Caribbean School of Medicine, Association of Certified Anti-Money Laundering Specialists, Becker Professional Education, Carrington College, Chamberlain University, DeVry University and its Keller Graduate School of Management, EduPristine, Ross University School of Medicine and Ross University School of Veterinary Medicine. For more information, visit adtalem.com.
John Merryman, Director of Communications, CDU
Marci Grossman, Dir. of External Comm., RUSM


After showing pictures of Aurora borealis, people often tell me they hope to have this experience one day as well. That's also how we started. I had seen it several times already while guiding, but my mother and Geert really wanted to see it. So we decided to head north, and now, after three tries, we finally succeeded.
If you want to go hunting yourself, what do you need? Where do you go? It's always a bit of a gamble as northern lights are difficult to predict well in advance. But there are some things you can do to increase the chance of success.
1. Pick the right place. Northern lights are best seen inside the 'Auroral oval'. As this doughnut-shaped ring is centred around the Earth's geomagnetic pole, the best place is not always at the same latitude. The geomagnetic pole is tilted towards North America, meaning Northern Lights can be seen much further south in North America as in Europe. In Europe, the Auroral oval is over northern Scandinavia, just above Iceland and through the middle of Greenland.
2. It has to be dark. At these latitudes, it doesn't get dark in summer. Being around the Arctic Circle, the sun may just dip below the horizon or maybe not at all. From September to March the sun will be below the horizon long enough to create enough darkness during the night. This means this will be the best time to chase Auroras. Bear in mind that in the middle of winter the hours of daylight are very short, limiting the things you can do during the day. The available light however during those hours will be beautiful.
3. You need clear skies. This is even more difficult to predict. As Auroras take place at altitudes of at least 80km, they are well above the clouds. You want to be at a location that has little cloud cover. The west coast of Norway has very variable weather, meaning you'll rarely have overcast weather for a more extended period. A downside is that you're also less likely to have an extended period of good weather (although we had clear skies for 5 days in a row). Another good place is Abisko, though I've never been there in winter. On the other side of the Norwegian mountains, it often has good weather. The mountains form a barrier for clouds from the west. More difficult to reach, but also often with good weather is Scoresby Sund in East Greenland (and likely other places in Greenland as well). The ice cap creates its own climate and usually has a high-pressure system over it.
4. The sun must be active. This one is difficult too, as it is hard to predict. However, the sun has an 11-year cycle where it gets more active and less active. The last solar maximum was in 2014, so the next one should be expected in 2025. However, the pictures on this page are made this year, well after this solar maximum. If you're right in the auroral oval it doesn't matter too much really. Then there is always a good chance of seeing the Northern Lights. We were extremely lucky and saw at least a little bit of light six out of seven nights.
5. Accommodation. Now you've decided when and where to go, it's essential to find the right place to stay. Preferably away from cities, street lights or other artificial light sources, so you have the best chance of seeing the Aurora close to your home. Also, pay attention to places where you have a nice foreground below the Auroras. This is, of course, something that can be scouted during the daylight period.
Now you're all set, and you have to hope for a bit of solar wind and favourable cloud conditions. Several websites and apps give short-term predictions for Northern Lights. But my personal experience is that, in the right location, the cloud cover is more important as the solar wind.
Next Post Next post: What causes the Aurora?


text:
Alibaba's Jack Ma joins tech titans in supporting life sciences prize
Ki Mae Heussner Sep 27, 2013 (Jun 9, 2020) -- Blog Post
Earlier this year, some of the biggest stars in Silicon Valley, including Google (s GOOG) co-founder Sergey Brin, Facebook (s FB) CEO Mark Zuckerberg and investor Yuri Milner, announced a new prize recognizing achievement in life sciences research. This week, another tech luminary joined the group.
Alibaba founder Jack Ma and his wife Cathy Zhang are the latest supporters of the Breakthrough Prize in Life Sciences Foundation, which awards $3 million prizes to medical researchers at the top of their fields. With Ma's support, the prize will now be awarded annually to six medical scientists working on some of the world's most intractable diseases.
In announcing the prize in February, Zuckerberg said the point of the award was to recognize current researchers, as well as inspire future researchers.
"I think that our society needs more heroes who are scientists and researchers and engineers. You guys are doing all of the amazing work and the thing that we can do from the sidelines is build institutions that celebrate and reward and recognize all of the real work," he said.
The prize's other backers include Apple (s AAPL) Chairman Art Levinson (who is also the head of Google's new life sciences startup Calico), 23andMe co-founder (and wife of Brin) Anne Wojcicki and Zuckerberg's wife Priscilla Chan.


Cerebrovascular accidents (CVAs), more commonly known as strokes, occur when a heart-related problem impairs the amount of oxygen and glucose being delivered to the brain. This often leads to brain damage. Nearly one-third of all stroke survivors lose their independence because of permanent disability.
As of 2006, it was estimated that 6.4 million people suffered a stroke in this country, with women accounting for 3.9 million of that total. That equates to around 60 percent of all occurrences.
Similarly, women account for 60 percent of all stroke-related deaths. With every year that passes, it is estimated that 425,000 women will suffer strokes, which is 55,000 more incidences than men. According to a survey by the NSA and HealthyWomen, only 27 percent of women can name even two of the six primary symptoms for a stroke. That same survey showed that although strokes kill twice as many women as breast cancer every year, approximately 40 percent of women believe that breast cancer is five times more likely to occur than a stroke.
Although women have shown to be much more likely to suffer a stroke than men, nearly 70 percent of women had no idea that there was any disparity whatsoever regarding genders for stroke incidences. One of the reasons for the difference in incidences between genders is that women have a longer life expectancy than men, and strokes become more likely as age increases. However, it should be noted that men's stroke incidence rates are higher than women at younger ages.
Strokes are medical emergencies, and if any symptoms of a stroke are apparent, do not hesitate to seek medical help immediately.
If you or a loved one has been diagnosed with a Stroke in Georgia and feel it was discovered late or originally missed by your doctor or medical professional, please request one of the Dover Law Firm's free information resources available to you, including our book, Why Did This Critical Medical Error Happen to Me?, and our report, Stroke: Causes, Diagnosis & Medical Errors. You can also contact an experienced Atlanta medical malpractice attorney at the Dover Law Firm at 770-518-1133 to discuss your legal options if you've received bad medical care.
Post a Comment to "The Gender Effect: Strokes and Their Prevalence in Women"


text:
package flag_test

import (
	"fmt"
	"io/ioutil"
	"os"
	"path/filepath"

	"code.cloudfoundry.org/cli/cf/util/testhelpers/matchers"
	. "code.cloudfoundry.org/cli/command/flag"
	flags "github.com/jessevdk/go-flags"
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
)

var _ = Describe("path types", func() {
	type completable interface {
		Complete(string) []flags.Completion
	}

	var (
		currentDir string
		tempDir    string
	)

	testComplete := func(subject completable) {
		Describe("Complete", func() {
			When("the prefix is empty", func() {
				It("returns all files and directories", func() {
					matches := subject.Complete("")
					Expect(matches).To(ConsistOf(
						flags.Completion{Item: "abc"},
						flags.Completion{Item: "abd"},
						flags.Completion{Item: fmt.Sprintf("~add%c", os.PathSeparator)},
						flags.Completion{Item: "~abd"},
						flags.Completion{Item: fmt.Sprintf("add%c", os.PathSeparator)},
						flags.Completion{Item: fmt.Sprintf("aee%c", os.PathSeparator)},
						flags.Completion{Item: "tfg"},
						flags.Completion{Item: "ABCD"},
					))
				})
			})

			When("the prefix is not empty", func() {
				When("there are matching paths", func() {
					It("returns the matching paths", func() {
						matches := subject.Complete("a")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "abc"},
							flags.Completion{Item: "abd"},
							flags.Completion{Item: fmt.Sprintf("add%c", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("aee%c", os.PathSeparator)},
						))
					})

					It("is case sensitive", func() {
						matches := subject.Complete("A")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "ABCD"},
						))
					})

					It("finds files starting with '~'", func() {
						matches := subject.Complete("~")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "~abd"},
							flags.Completion{Item: fmt.Sprintf("~add%c", os.PathSeparator)},
						))
					})
				})

				When("there are no matching paths", func() {
					It("returns no matches", func() {
						Expect(subject.Complete("z")).To(BeEmpty())
					})
				})
			})

			When("the prefix is ~/", func() {
				var prevHome string

				BeforeEach(func() {
					prevHome = os.Getenv("HOME")
				})

				AfterEach(func() {
					os.Setenv("HOME", prevHome)
				})

				When("$HOME is set", func() {
					var (
						tempDir string
						err     error
					)

					BeforeEach(func() {
						tempDir, err = ioutil.TempDir("", "")
						Expect(err).ToNot(HaveOccurred())
						os.Setenv("HOME", tempDir)

						for _, filename := range []string{"abc", "def"} {
							err = ioutil.WriteFile(filepath.Join(tempDir, filename), []byte{}, 0400)
							Expect(err).ToNot(HaveOccurred())
						}

						for _, dir := range []string{"adir", "bdir"} {
							err = os.Mkdir(filepath.Join(tempDir, dir), 0700)
							Expect(err).ToNot(HaveOccurred())
						}
					})

					AfterEach(func() {
						err = os.RemoveAll(tempDir)
						Expect(err).ToNot(HaveOccurred())
					})

					It("returns matching paths in $HOME", func() {
						matches := subject.Complete(fmt.Sprintf("~%c", os.PathSeparator))
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: fmt.Sprintf("~%cabc", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("~%cdef", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("~%cadir%c", os.PathSeparator, os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("~%cbdir%c", os.PathSeparator, os.PathSeparator)},
						))
					})
				})
			})

			When("the prefix starts with ~/", func() {
				var prevHome string

				BeforeEach(func() {
					prevHome = os.Getenv("HOME")
				})

				AfterEach(func() {
					os.Setenv("HOME", prevHome)
				})

				When("$HOME is set", func() {
					var (
						tempDir string
						err     error
					)

					BeforeEach(func() {
						tempDir, err = ioutil.TempDir("", "")
						Expect(err).ToNot(HaveOccurred())
						os.Setenv("HOME", tempDir)

						for _, filename := range []string{"abc", "def"} {
							err = ioutil.WriteFile(filepath.Join(tempDir, filename), []byte{}, 0400)
							Expect(err).ToNot(HaveOccurred())
						}

						for _, dir := range []string{"adir", "bdir"} {
							err = os.Mkdir(filepath.Join(tempDir, dir), 0700)
							Expect(err).ToNot(HaveOccurred())
						}
					})

					AfterEach(func() {
						err = os.RemoveAll(tempDir)
						Expect(err).ToNot(HaveOccurred())
					})

					It("returns matching paths in $HOME", func() {
						matches := subject.Complete(fmt.Sprintf("~%ca", os.PathSeparator))
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: fmt.Sprintf("~%cabc", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("~%cadir%c", os.PathSeparator, os.PathSeparator)},
						))
					})
				})
			})
		})
	}

	BeforeEach(func() {
		var err error
		currentDir, err = os.Getwd()
		Expect(err).ToNot(HaveOccurred())

		tempDir, err = ioutil.TempDir("", "")
		Expect(err).ToNot(HaveOccurred())

		err = os.Chdir(tempDir)
		Expect(err).ToNot(HaveOccurred())

		for _, filename := range []string{"abc", "abd", "~abd", "tfg", "ABCD"} {
			err = ioutil.WriteFile(filename, []byte{}, 0400)
			Expect(err).ToNot(HaveOccurred())
		}

		for _, dir := range []string{"~add", "add", "aee"} {
			err := os.Mkdir(dir, 0700)
			Expect(err).ToNot(HaveOccurred())
		}
	})

	AfterEach(func() {
		err := os.Chdir(currentDir)
		Expect(err).ToNot(HaveOccurred())
		err = os.RemoveAll(tempDir)
		Expect(err).ToNot(HaveOccurred())
	})

	Describe("Path", func() {
		var path Path
		testComplete(path)
	})

	Describe("PathWithExistenceCheck", func() {
		var pathWithExistenceCheck PathWithExistenceCheck

		BeforeEach(func() {
			pathWithExistenceCheck = PathWithExistenceCheck("")
		})

		testComplete(pathWithExistenceCheck)

		Describe("UnmarshalFlag", func() {
			When("the path does not exist", func() {
				It("returns a path does not exist error", func() {
					err := pathWithExistenceCheck.UnmarshalFlag("./some-dir/some-file")
					Expect(err).To(MatchError(&flags.Error{
						Type:    flags.ErrRequired,
						Message: "The specified path './some-dir/some-file' does not exist.",
					}))
				})
			})

			When("the path exists", func() {
				When("the path is relative", func() {
					It("expands the path", func() {
						fullPath := filepath.Join(tempDir, "abc")
						err := pathWithExistenceCheck.UnmarshalFlag("abc")
						Expect(err).ToNot(HaveOccurred())
						Expect(string(pathWithExistenceCheck)).To(matchers.MatchPath(fullPath))
					})
				})

				When("the path is absolute", func() {
					It("preserves the path", func() {
						err := pathWithExistenceCheck.UnmarshalFlag(filepath.Join(tempDir, "abc"))
						Expect(err).ToNot(HaveOccurred())
						Expect(pathWithExistenceCheck).To(BeEquivalentTo(filepath.Join(tempDir, "abc")))
					})
				})
			})
		})
	})

	Describe("ManifestPathWithExistenceCheck", func() {
		var manifestPathWithExistenceCheck ManifestPathWithExistenceCheck

		BeforeEach(func() {
			manifestPathWithExistenceCheck = ManifestPathWithExistenceCheck("")
		})

		testComplete(manifestPathWithExistenceCheck)

		Describe("UnmarshalFlag", func() {
			When("the path does not exist", func() {
				It("returns a path does not exist error", func() {
					err := manifestPathWithExistenceCheck.UnmarshalFlag("./some-dir/some-file")
					Expect(err).To(MatchError(&flags.Error{
						Type:    flags.ErrRequired,
						Message: "The specified path './some-dir/some-file' does not exist.",
					}))
				})
			})

			When("the path is a directory, and exists, but does not contain a manifest.{yml,yaml} file", func() {
				It("returns a path does not exist error", func() {
					err := manifestPathWithExistenceCheck.UnmarshalFlag(tempDir)
					Expect(err).To(MatchError(&flags.Error{
						Type:    flags.ErrRequired,
						Message: "The specified directory '" + tempDir + "' does not contain a file named 'manifest.yml'.",
					}))
				})
			})

			When("the path exists", func() {
				It("sets the path", func() {
					err := manifestPathWithExistenceCheck.UnmarshalFlag("abc")
					Expect(err).ToNot(HaveOccurred())
					Expect(manifestPathWithExistenceCheck).To(BeEquivalentTo("abc"))
				})
			})
		})
	})

	Describe("JSONOrFileWithValidation", func() {
		var jsonOrFile JSONOrFileWithValidation

		BeforeEach(func() {
			jsonOrFile = JSONOrFileWithValidation{}
		})

		testComplete(jsonOrFile)

		Describe("UnmarshalFlag", func() {
			When("the file exists", func() {
				var tempPath string

				When("the file has valid JSON", func() {
					BeforeEach(func() {
						tempPath = tempFile(`{"this is":"valid JSON"}`)
					})

					It("reads and unmarshals the JSON from the file", func() {
						err := jsonOrFile.UnmarshalFlag(tempPath)
						Expect(err).ToNot(HaveOccurred())
						Expect(jsonOrFile).To(Equal(JSONOrFileWithValidation{
							IsSet: true,
							Value: map[string]interface{}{
								"this is": "valid JSON",
							},
						}))
					})
				})

				When("the file has invalid JSON", func() {
					BeforeEach(func() {
						tempPath = tempFile(`{"this is":"invalid JSON"`)
					})

					It("errors with the invalid configuration error", func() {
						err := jsonOrFile.UnmarshalFlag(tempPath)
						Expect(err).To(Equal(&flags.Error{
							Type:    flags.ErrRequired,
							Message: "Invalid configuration provided for -c flag. Please provide a valid JSON object or path to a file containing a valid JSON object.",
						}))
					})
				})
			})

			When("the JSON is invalid", func() {
				It("errors with the invalid configuration error", func() {
					err := jsonOrFile.UnmarshalFlag(`{"this is":"invalid JSON"`)
					Expect(err).To(Equal(&flags.Error{
						Type:    flags.ErrRequired,
						Message: "Invalid configuration provided for -c flag. Please provide a valid JSON object or path to a file containing a valid JSON object.",
					}))
				})
			})

			When("the JSON is valid", func() {
				It("reads and unmarshals the JSON", func() {
					err := jsonOrFile.UnmarshalFlag(`{"this is":"valid JSON"}`)
					Expect(err).ToNot(HaveOccurred())
					Expect(jsonOrFile).To(Equal(JSONOrFileWithValidation{
						IsSet: true,
						Value: map[string]interface{}{
							"this is": "valid JSON",
						},
					}))
				})
			})
		})
	})

	Describe("PathWithExistenceCheckOrURL", func() {
		var pathWithExistenceCheckOrURL PathWithExistenceCheckOrURL

		BeforeEach(func() {
			pathWithExistenceCheckOrURL = PathWithExistenceCheckOrURL("")
		})

		testComplete(pathWithExistenceCheckOrURL)

		Describe("UnmarshalFlag", func() {
			When("the path is a URL", func() {
				It("sets the path if it starts with 'http://'", func() {
					err := pathWithExistenceCheckOrURL.UnmarshalFlag("http://example.com/payload.tgz")
					Expect(err).ToNot(HaveOccurred())
					Expect(pathWithExistenceCheckOrURL).To(BeEquivalentTo("http://example.com/payload.tgz"))
				})

				It("sets the path if it starts with 'https://'", func() {
					err := pathWithExistenceCheckOrURL.UnmarshalFlag("https://example.com/payload.tgz")
					Expect(err).ToNot(HaveOccurred())
					Expect(pathWithExistenceCheckOrURL).To(BeEquivalentTo("https://example.com/payload.tgz"))
				})
			})

			When("the path does not exist", func() {
				It("returns a path does not exist error", func() {
					err := pathWithExistenceCheckOrURL.UnmarshalFlag("./some-dir/some-file")
					Expect(err).To(MatchError(&flags.Error{
						Type:    flags.ErrRequired,
						Message: "The specified path './some-dir/some-file' does not exist.",
					}))
				})
			})

			When("the path exists", func() {
				It("sets the path", func() {
					err := pathWithExistenceCheckOrURL.UnmarshalFlag("abc")
					Expect(err).ToNot(HaveOccurred())
					Expect(pathWithExistenceCheckOrURL).To(BeEquivalentTo("abc"))
				})
			})
		})
	})

	Describe("PathWithAt", func() {
		var pathWithAt PathWithAt

		Describe("Complete", func() {
			When("the prefix is empty", func() {
				It("returns no matches", func() {
					Expect(pathWithAt.Complete("")).To(BeEmpty())
				})
			})

			When("the prefix doesn't start with @", func() {
				It("returns no matches", func() {
					Expect(pathWithAt.Complete("a@b")).To(BeEmpty())
				})
			})

			When("the prefix starts with @", func() {
				When("there are no characters after the @", func() {
					It("returns all files and directories", func() {
						matches := pathWithAt.Complete("@")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "@abc"},
							flags.Completion{Item: "@abd"},
							flags.Completion{Item: fmt.Sprintf("@~add%c", os.PathSeparator)},
							flags.Completion{Item: "@~abd"},
							flags.Completion{Item: fmt.Sprintf("@add%c", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("@aee%c", os.PathSeparator)},
							flags.Completion{Item: "@tfg"},
							flags.Completion{Item: "@ABCD"},
						))
					})
				})

				When("there are characters after the @", func() {
					When("there are matching paths", func() {
						It("returns the matching paths", func() {
							matches := pathWithAt.Complete("@a")
							Expect(matches).To(ConsistOf(
								flags.Completion{Item: "@abc"},
								flags.Completion{Item: "@abd"},
								flags.Completion{Item: fmt.Sprintf("@add%c", os.PathSeparator)},
								flags.Completion{Item: fmt.Sprintf("@aee%c", os.PathSeparator)},
							))
						})

						It("is case sensitive", func() {
							matches := pathWithAt.Complete("@A")
							Expect(matches).To(ConsistOf(
								flags.Completion{Item: "@ABCD"},
							))
						})
					})

					When("there are no matching paths", func() {
						It("returns no matches", func() {
							Expect(pathWithAt.Complete("@z")).To(BeEmpty())
						})
					})
				})
			})

			When("the prefix is @~/", func() {
				var prevHome string

				BeforeEach(func() {
					prevHome = os.Getenv("HOME")
				})

				AfterEach(func() {
					os.Setenv("HOME", prevHome)
				})

				When("$HOME is set", func() {
					var (
						tempDir string
						err     error
					)

					BeforeEach(func() {
						tempDir, err = ioutil.TempDir("", "")
						Expect(err).ToNot(HaveOccurred())
						os.Setenv("HOME", tempDir)

						for _, filename := range []string{"abc", "def"} {
							err = ioutil.WriteFile(filepath.Join(tempDir, filename), []byte{}, 0400)
							Expect(err).ToNot(HaveOccurred())
						}

						for _, dir := range []string{"adir", "bdir"} {
							err = os.Mkdir(filepath.Join(tempDir, dir), 0700)
							Expect(err).ToNot(HaveOccurred())
						}
					})

					AfterEach(func() {
						err = os.RemoveAll(tempDir)
						Expect(err).ToNot(HaveOccurred())
					})

					It("returns matching paths in $HOME", func() {
						matches := pathWithAt.Complete(fmt.Sprintf("@~%c", os.PathSeparator))
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: fmt.Sprintf("@~%cabc", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("@~%cdef", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("@~%cadir%c", os.PathSeparator, os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("@~%cbdir%c", os.PathSeparator, os.PathSeparator)},
						))
					})
				})
			})

			When("the prefix starts with @~/", func() {
				var prevHome string

				BeforeEach(func() {
					prevHome = os.Getenv("HOME")
				})

				AfterEach(func() {
					os.Setenv("HOME", prevHome)
				})

				When("$HOME is set", func() {
					var (
						tempDir string
						err     error
					)

					BeforeEach(func() {
						tempDir, err = ioutil.TempDir("", "")
						Expect(err).ToNot(HaveOccurred())
						os.Setenv("HOME", tempDir)

						for _, filename := range []string{"abc", "def"} {
							err = ioutil.WriteFile(filepath.Join(tempDir, filename), []byte{}, 0400)
							Expect(err).ToNot(HaveOccurred())
						}

						for _, dir := range []string{"adir", "bdir"} {
							err = os.Mkdir(filepath.Join(tempDir, dir), 0700)
							Expect(err).ToNot(HaveOccurred())
						}
					})

					AfterEach(func() {
						err = os.RemoveAll(tempDir)
						Expect(err).ToNot(HaveOccurred())
					})

					It("returns matching paths in $HOME", func() {
						matches := pathWithAt.Complete(fmt.Sprintf("@~%ca", os.PathSeparator))
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: fmt.Sprintf("@~%cabc", os.PathSeparator)},
							flags.Completion{Item: fmt.Sprintf("@~%cadir%c", os.PathSeparator, os.PathSeparator)},
						))
					})
				})
			})
		})
	})

	Describe("PathWithBool", func() {
		var pathWithBool PathWithBool

		Describe("Complete", func() {
			When("the prefix is empty", func() {
				It("returns bool choices and all files and directories", func() {
					matches := pathWithBool.Complete("")
					Expect(matches).To(ConsistOf(
						flags.Completion{Item: "true"},
						flags.Completion{Item: "false"},
						flags.Completion{Item: "abc"},
						flags.Completion{Item: "abd"},
						flags.Completion{Item: fmt.Sprintf("add%c", os.PathSeparator)},
						flags.Completion{Item: "~abd"},
						flags.Completion{Item: fmt.Sprintf("~add%c", os.PathSeparator)},
						flags.Completion{Item: fmt.Sprintf("aee%c", os.PathSeparator)},
						flags.Completion{Item: "tfg"},
						flags.Completion{Item: "ABCD"},
					))
				})
			})

			When("the prefix is not empty", func() {
				When("there are matching bool/paths", func() {
					It("returns the matching bool/paths", func() {
						matches := pathWithBool.Complete("t")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "true"},
							flags.Completion{Item: "tfg"},
						))
					})

					It("paths are case sensitive", func() {
						matches := pathWithBool.Complete("A")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "ABCD"},
						))
					})

					It("bools are not case sensitive", func() {
						matches := pathWithBool.Complete("Tr")
						Expect(matches).To(ConsistOf(
							flags.Completion{Item: "true"},
						))
					})
				})

				When("there are no matching bool/paths", func() {
					It("returns no matches", func() {
						Expect(pathWithBool.Complete("z")).To(BeEmpty())
					})
				})
			})
		})
	})
})

redpajama_set_name: RedPajamaGithub


text:
package net.sf.j2ep;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.j2ep.model.Server;

import java.util.logging.Logger;

/**
 * A filter that will locate the appropriate Rule and use it to rewrite any
 * incoming request to get the server targeted. Responses sent back are also
 * rewritten.
 *
 * @author Anders Nyman
 */
public class RewriteFilter implements Filter {

    private FilterConfig filterConfig;

    /**
     * Logging element supplied by commons-logging.
     */
    private static final Logger logger = Logger.getLogger("org.geoint.keyhole");

    /**
     * The server chain, will be traversed to find a matching server.
     */
    private ServerChain serverChain;

    /**
     * Rewrites the outgoing stream to make sure URLs and headers are correct.
     * The incoming request is first processed to identify what resource we want
     * to proxy.
     *
     * @param request
     * @param response
     * @param filterChain
     * @throws java.io.IOException
     * @throws javax.servlet.ServletException
     * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest,
     * javax.servlet.ServletResponse, javax.servlet.FilterChain)
     */
    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain filterChain) throws IOException, ServletException {
        log("keyhole: RewriteFilter.doFilter() called  *******************");
        request.setCharacterEncoding("UTF-8");
        response.setCharacterEncoding("UTF-8");

        if (response.isCommitted()) {
            log("Not proxying, already committed.");
            logger.info("Not proxying, already committed.");
        } else if (!(request instanceof HttpServletRequest)) {
            log("Request is not HttpRequest will only handle HttpRequests.");
            logger.info("Request is not HttpRequest, "
                    + "will only handle HttpRequests.");
        } else if (!(response instanceof HttpServletResponse)) {
            log("Request is not HttpResponse will only handle HttpResponses.");
            logger.info("Request is not HttpResponse, "
                    + "will only handle HttpResponses.");
        } else {

            log("****************************standard request/response submitted");
            HttpServletResponse httpResponse = (HttpServletResponse) response;
            HttpServletRequest httpRequest = (HttpServletRequest) request;

            //log request/response values
            log("*******request*******");

            ArrayList<String> headerNames
                    = Collections.list(httpRequest.getHeaderNames());
            for (String name : headerNames) {
                log(name + " : " + httpRequest.getHeader(name));
            }

            log(" ********response********");

            for (String name : httpResponse.getHeaderNames()) {
                log(name + " : " + httpResponse.getHeader(name));
            }

            //printing request/response headers to the console
            //for debugging purposes
//            List<String> requestHeaders
//                    = Collections.list(httpRequest.getHeaderNames());
//
//            requestHeaders.stream().forEach((s) -> {
//                System.out.println("requestHeaderField: {0}" + s);
//                System.out.println("requestHeaderValue: {0}"
//                        + httpRequest.getHeader(s));
//            });
//
//            httpResponse.getHeaderNames().stream().forEach((s) -> {
//                System.out.println("responseHeaderField: {0}" + s);
//                System.out.println("responseHeaderValue: {0}"
//                        + httpResponse.getHeader(s));
//            });
//            System.out.println("httpRequest.getContextPath(): {0}"
//                    + httpRequest.getContextPath());
            //selecting the correct 'server' from the data.xml file
            Server server = serverChain.evaluate(httpRequest);
            if (server == null) {
                log("Could not find a rule for this request "
                        + "will not do anything.");
                logger.info("Could not find a rule for this request, "
                        + "will not do anything.");
                filterChain.doFilter(request, response);
            } else {
                log("server != null *******************");
                httpRequest.setAttribute("proxyServer", server);

                //print request/response headers to find the field needed for
//                //the redirect
                //@todo retrieving the port from the config file,
                //and not from the request url
                String ownHostName = server.getDomainName();
//                String ownHostName = request.getServerName() + ":"
//                        + request.getServerPort();
//                logger.log(Level.WARNING, "ownHostName: {0}", ownHostName);

                UrlRewritingResponseWrapper wrappedResponse;
                wrappedResponse = new UrlRewritingResponseWrapper(httpResponse,
                        server, ownHostName, httpRequest.getContextPath(),
                        serverChain);

                filterChain.doFilter(httpRequest, wrappedResponse);

                wrappedResponse.processStream();
            }
        }
    }

    /**
     * Initialize.
     *
     * @param filterConfig
     * @throws javax.servlet.ServletException
     * @see javax.servlet.Filter#init(javax.servlet.FilterConfig)
     */
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

        this.filterConfig = filterConfig;

        String data = filterConfig.getInitParameter("dataUrl");
        if (data == null) {
            throw new ServletException("dataUrl is required.");
        } else {
            try {
                File dataFile = new File(filterConfig.getServletContext().getRealPath(data));
                ConfigParser parser = new ConfigParser(dataFile);
                serverChain = parser.getServerChain();
            } catch (Exception e) {
                throw new ServletException(e);
            }
        }

    }

    /**
     * Release resources.
     *
     * @see javax.servlet.Filter#destroy()
     */
    @Override
    public void destroy() {
        serverChain = null;
    }

    private void log(String msg) {
        filterConfig.getServletContext().log("keyhole" + msg);
    }

}


Hello, I just got set up on a VPS / cPanel, slowly learning my way around what's what- I'm interested in creating my own CDN- I have (I think) a typical setup, each of the two IPs are associated with a name server, though I notice that all the accounts are directed to the first of the IP addresses, the second seems clear- would it be reasonable to locate shared content there? Part of the idea is to limit traffic to the CDN so that it only accepts calls from my IP. Any thoughts? Tutorials? Examples?
I'm also interested in any general tutorials about VPS maintenance etc., written for the beginner- I'm familiar with cPanel and the M and P in LAMP- but definitely not the L and A.
Both IPs point to the same machine, so you're not going to be able to create anything resembling a content delivery network with one VPS account anywhere. You can setup a separate virtual host for static assets that don't need cookie data sent along with any requests in order to optimize loading times, but that's about it.
Thanks for your reply- my initial thought was to create a sub-domain of our main account (content.domain.com) and use that for the content we typically use over and over again- a reset.css file, for example- and then protect it from access outside our VPS- I wondered if I could somehow use the secondary IP for this, I'm not sure if I'm way off base?
Yes, because that reset.css file isn't going to be requested from your IP, it's going to be requested from the IP of whoever's trying to load your site.


The speakers include Ronnen Levinson, staff scientist and leader of the Heat Island Group, at the national laboratory and Jonathan Slack, senior scientific engineering associate.
The laboratory is leading California's efforts to save energy, lower urban air temperatures and to reduce greenhouse gas emissions through cool community strategies like cool roofs, cool pavements, cool walls and urban vegetation.
Seating is limited. To register, visit www.usgbccc.org.


Hurley Investigative Services, LLC, is a full service private investigative agency serving all of Berkeley NJ, that is licensed and bonded in the state of New Jersey. Located in central New Jersey we provide a complete array of investigative services. With 35 years of investigative and law enforcement experience we deliver professional results, ethically, confidentially, and with attention to detail.
If you are in need of a private investigative service in Berkeley NJ, please contact Hurley Investigative Services, LLC. Our initial consultation is FREE and our investigators will meet you at a location convenient to you.


TORONTO, April 11, 2019 /CNW/ - Sleep Country Canada Holdings Inc. ("Sleep Country" or the "Company" (TSX: ZZZ)) announced today the introduction of Safety 1st crib mattresses to its 265 stores nationwide, reinforcing its commitment to helping all Canadians get a better night's sleep.
With the availability of two mattresses for cribs and toddlers, Sleep Country is now catering to the youngest member of any family: the baby. With the exciting addition of these high-quality baby products, the company is showing its dedication to provide sleep essentials for all sleepers throughout all life stages.
"We're thrilled to introduce Safety 1st crib mattresses in all of our stores across the country. We pride ourselves on being Canada's sleep experts, which means helping the entire family sleep better," said Stewart Schaefer, Chief Business Development Officer, Sleep Country Canada. "We've always had products that provide a more comfortable sleep, but there is nothing that will help a parent rest better than knowing that his or her child is sleeping safely."
The Safety 1st Pleasant Dreams and Tranquil Dreams Crib and Toddler Mattresses retail for $99.99 and $169.99 CDN respectively. Designed with a high density thermos-bonded fiber core, helps give your baby the firm support they need for their development and safety. To learn more about products or the company, please visit your local Sleep Country or Dormez-vous store or online at sleepcountry.ca/safety-1st or dormezvous.com/safety-1st.
Sleep Country is Canada's leading sleep retailer. Sleep Country is the only specialty mattress retailer with a national footprint in Canada. Sleep Country operates under three retail banners: Dormez-vous, the largest retailer of mattresses in Quebec; Sleep Country Canada, the largest mattress retailer in the rest of Canada; and Endy, Canada's leading online mattress brand with the most Canadian 5-star reviews. As of April 11, 2019, Sleep Country has 265 stores and 16 distribution centres across Canada. All of the Company's stores are corporate-owned, enabling it to develop and maintain a strong culture of customer service, resulting in a consistent and superior in-store and home delivery experience. Sleep Country also works closely with Canadian charities to donate new and gently used mattresses to families and children in need.
For more information about the company visit sleepcountry.ca, on Facebook at www.facebook.com/SleepCountryCanada and on Twitter @SleepCountryCan.