text:
Rounding the Final Turn: Iceland to Shetland
September 7, 2011 Luke Comments 0 Comment
We're about five miles from the entrance to Yell Sound, the entry point into the Shetland Islands. We still have 30-odd miles to go to Lerwick from there, but by that point we'll have made it to the Shetlands and this leg of the voyage will be complete.
And it's been an interesting leg. Following the diversion to Husavik, it's mostly been a motoring or motorsailing journey (surprise, surprise). But in the last 36 hours or so, we've been sailing, more or less. For the past 18 hours, we've been rockin', actually.
The wind has been from the starboard quarter, meaning we've been running off before the wind on a broad reach. And once the wind shifted to that direction, it started building…and it built into the night until it was in the high 20s and low 30s. It made for a fun, but dark, 9pm-12midnight watch; the 6-10am watch this morning was still fun but with visibility, occasional patches of blue sky, and seas that had had all night to build. Big, rolling swells of deep blue, flecked with white manes, all beneath a powder-blue sky…it was a wonderful morning.
Thankfully. Because prior to that, the journey had been a real drag. Teamed up with the Finnish couple, it was a day or so into the trip when I realized: for the second time this summer, we have a Nordic couple in which the female is the stronger member of the pair. And in both cases, it was the male who'd brought the couple to sailing and the Polar Bear adventure in particular.
In this case, the fine gent took the fabled Finnish stoicism to an extreme: he pouted and sulked through every watch, spending the majority of every watch below in the cabin, and never lifted a finger to help with any of the assigned team chores. His wife, on the other hand, was topside for pretty much the entirety of every watch, no matter how cold and damp, and was tirelessly helpful when it came out turn to clean up the galley.
I don't blame the guy, really. He, and all the other guests on this trip, signed up for a sailing trip from Greenland to Reykjavik and on to the western isles of Scotland via the remote outcrop of rock known as St. Kilda. What they got, instead, was a delivery trip. Instead of savoring the journey and exploring new places, these guests got stuck on a trip where the be all and end all was to get Polar Bear back to Newcastle by Sept. 10. No time to stop and smell the roses, so to speak, and no time to dawdle en route. It's a go-go-go task, which mandated the excessive use of the engine and a reliance on the autopilot on pitch-dark nights. Bottom line: these guests got screwed. And they know it.
But they didn't get screwed by Boogie, Marlies or me, or even the weather. In the case of the weather, it is what it is, to spout that idiotic maxim of today; they knew bad weather was a likelihood on a trip in these waters at this time of year and they were OK with it. And Boogie, Marlies and I are only the crew; we didn't determine the course of this trip.
No, the fault lies solely with the aforementioned Alfred, owner of Polar Bear and the only one involved on the supply side of this service-oriented business with no regard for the customers. But I've been over his idiocy before so let's leave it at that.
However, for this silly Finn to pout like a 12-year-old is pretty asinine. We're out here in the middle of the sea, nothing's going to change the circumstances until we reach port. You might as well enjoy the trip as best you can — and then beat the shit outta the owner once you're on land. OK, maybe there's no need to get violent but you get the idea: take it up with Alfred. In the meantime, get with the Monty Python plan and always look on the bright side…
And there was a lot of bright side, particularly in the last couple of days. The sailing was been a zippy, rollercoaster ride to the southeast and we've seen a bunch of wildlife en route. For the first time — the FIRST! — this entire summer, we encountered a pod of orcas. Woohoo! I dig orcas, having watched them back in Alaska quite a bit. Before I started preparing for this summer, I had always thought they were a Pacific-only species. So when I learned they were common along our route from the Shetlands on, I was stoked. And then…nothing. Not a one until today, so that was some small bit of last-minute redemption.
We also had bioluminescence on last night's sail. Swirling in the waves along the hull and in the wake behind Polar Bear, the little glowing blobs mirrored the brief starry skies we enjoyed early on, and then continued long after the clouds had obscured the skies. Always one of my favorite parts of sailing, bioluminescence is one of those magical special effects of nature that still make me feel like a little kid every time I see it.
Also notable on this leg were the gannets, pelagic birds we've seen since the start of the summer but not so often up in Greenland and Iceland. Ever since we neared the Faroes, however, their number and size have increased. In particular, I've seen a bunch of juvenile gannets that have been just enormous: wingspans that, on first glance, made me think of an albatross (which, it must be noted, I've never seen in the wild). If those are young of this year and they get that big in just a few months…yikes. They've been THAT big as they swoop and soar in circles on the wild winds, never alighting on the water but instead disappearing downwind, only to return (the same bird?) a little later on. Majestic. Like frigate birds of the north.
And then this morning we were engulfed by hundreds of fulmars, all gliding on the winds around Polar Bear and dotting the waters around her as she plowed through the swell. It was reminiscent of that evening we rounded the southern cape of Jan Mayen, with countless fulmars in every field of view. It called to mind Alfred Hitchcock, to be honest, but these birds seemed disinterested, at best.
Sure, the monotonous motoring and the damp, foggy skies were a drag, no doubt about it. But that's what you sign up for on northern waters. Deal with it. That this Finnish bloke couldn't see past his own nose was a bit of a downer. I was letting him drag me into his funk but the conditions of the past 24-plus hours snapped me out of the fog and back into the sunlight of a fun passage at sea.
So now it's on to Lerwick, where we'll spend the evening at the dock and then head out in the morning, bound for the final two-day run south to Newcastle.
2011 Adventure, adventure, Husavik, Iceland, Lerwick, Polar Bear, sail, Sailing, Shetland
Just to Be Clear
And Still More Positive Vibrations


It takes a lot of procedure for getting into the home of your desires. But the good news is that in case you make the right moves, you are able to own a gorgeous home to get a fraction of what it could have cost you several years ago.
OA bankruptcy lawyer will be focused on ensuring that you get the best economic future possible in your situations. In addition, you'll also be given necessary professional advice, vital info, and stress relief.
Set two hrs a day for working on your finances. Speak to the bank and let them know your situation. As they know about to catch a crook, and had not really intention to take their cash, and they know your credit history, nearly they want you to have a great future, they want to get their money back! So it's in their interest to become understanding. They will give you a period so that you won't have to proceed bankrupt. This could be the end of the debt trauma. Bankruptcy is really a certificate that will always keep borrowers away from you.
Some individuals decide that Chapter thirteen bankruptcy would work best for their particular situation to protect assets. Whilst filing a Chapter thirteen, the court will find a trustee to monitor the particular finances of the debtor because they relate to the bankruptcy situation. The court requires these filing to be responsible for carrying out a plan to get out of debt within no more than five years. For a lot of, this makes Chapter seven sound like a jewel. Initially, Chapter 7 sounds like the no-brainer if you qualify. Even though, everything is not always just like it seems.
A person is said to be bankrupt when he is not really in a situation to pay back their debts and liabilities even with reaching the last consequences. This particular declaration is discharged with the court. Bankruptcy is a very deteriorating situation and remains regarding ten long years on this credit report. Here is a solution to the bankruptcy credit repair. With this, you require counseling sessions simply by government registered consultants prior to six months of filing personal bankruptcy relief. After you get respite from your bankruptcy credit restoration, you should work o brand new beginning for building a great reputation in the market. Creditors usually require credit scoring of the person to know whether she or he is trustworthy enough to provide credit or not. You should always keep your credit score in such a way that always increase credit score.
I believe credit counseling is worthless. If their main benefit would be to negotiate with your creditors to lessen your rates, then perhaps you should do it yourself? Why adversely have an effect on your credit unnecessarily?
Otherwise, for the small amount required, you have the option of the unsecured type that is a little bit difficult to obtain, but not impossible. You need to display to your lender that you can repay the loan amount promptly. The lender gives you small amount right here.


In today's world, you can look up and learn about a person before you meet them in person, especially in business. Many folks typically look up your website or LinkedIn profile before they meet you, and what do they see first? Your photo! That is why a headshot is like your first handshake, except that it lasts mere seconds and can be done through a computer screen. Like a confident grip of the handshake, your headshot needs to make a good first impression. Does it connect with the viewer? Is it both warm and personable while also being professional? These are the questions I always ask myself as a photographer. Other things will be at the top of my mind while I'm photographing someone such as what they do for a living. For example, a Lawyer might need a more traditional pose than a Creative Director. . . .


text:
Today, we're excited to announce two new Enterprise offerings — AutoTune Early Access and Premier Support — and share the latest on our continued commitment to security.
Now, more than ever, audio has become integral to internet apps and services.
And with the rapid rise in AI advancements, organizations across industries like Video Platforms, Call Tracking, Podcasts, and more are adopting AI technology to innovate, differentiate, and ultimately drive their businesses forward.
Our customers in these spaces, such as Loop Media, CallRail, and Spotify, have seen the benefits of adopting AssemblyAI models to transcribe and understand audio data at extremely large scale. From feedback, we've heard that cross-functional teams are increasingly reliant on Automatic Speech Recognition (ASR) to deliver highly accurate transcriptions in order to do their best work. In addition, many customers are keen on taking advantage of more real-time, personalized technical support to make the most of our API.
We want AssemblyAI to be the most accessible API platform that product teams go to for easy access to State-of-the-Art AI models. That's why we're excited to announce the launch of two new Enterprise offerings — AutoTune Early Access and Premier Support — in addition to a new security certification, that will continue to make building with AssemblyAI even more reliable and seamless.
Next-level transcription accuracy—now available with AutoTune
What is AutoTune? In short, AutoTune combines better transcription accuracy and our AI expertise into a single service for customers.
With AutoTune, now in Early Access, the AssemblyAI API can automatically identify potential errors our AI models are making when transcribing your data. These potential errors are then surfaced to our team of AI engineers, who analyze and proactively make improvements to our AI models in order to reduce the frequency of these errors occurring again.
Today, we're rolling out AutoTune to a select few customers as part of our Early Access period. Once you've received access, activating AutoTune is a simple toggle-on in your dashboard. No code is required. From there, AutoTune works automatically in the background.
Once enabled, our team of AI researchers and engineers proactively review, analyze, and identify potential errors our AI models may be making on random samples of your data. You'll stay in the loop through customized benchmark reports each quarter that your dedicated Account Manager will walk you through.
AutoTune can help customers across a wide variety of industries and use cases.
Conversation Intelligence: better identification of keywords unique to your business, or customers, that trigger downstream tasks for analytics and reporting
Media Monitoring: better identification of proper nouns, such as brand names, that are tracked for media success
Podcasts: better identification of slang, person names, and popular podcast hosts that can improve the accuracy of downstream tasks like Topic Detection and Content Moderation
Starting today, AutoTune is available to new and existing AssemblyAI customers as a premium add-on service. To see if you qualify for Early Access, contact our Sales team.
Premier Support for large-scale deployments
Premier Support gives Enterprises building with AssemblyAI access to our dedicated team of AI specialists, engineers, and product experts at every step of your journey. Our teams work hand-in-hand with your team to advise on best practices with our AI models, rapidly prototype new proof-of-concepts, deep dive on new models and features we launch, and overall better support your product and engineering teams with nearly 24/7 on-call support.
With Premier Support, you'll get end-to-end technical support including:
1:1 implementation provided by a dedicated team of Support Engineers
Always-on partnership via direct Slack access with your dedicated Technical Account Manager
Product education to help you with setup, configuration, coaching, and early access to our new models
Strategy & planning including specific health checks, best practices, and more
Proactive services that range from personalized monitoring to annual technical reviews
To ensure the highest standards of reliability and support, Premier Support offers robust services by a team who is familiar with your use case, industry, backend architecture, as well as your team's programming languages.
With faster response times, specialized guidance, and access to our in-house experts, we'll help you confidently ship new AI-powered features—from brainstorm to build.
Security and privacy by default
Our customers trust us with their audio data, and we take that trust seriously. Since day one, security and privacy have always been our top priorities.
Today, we're excited to announce that we've achieved our SOC 2 Type 2 certification. This rigorous annual process reaffirms our commitment to security and makes efforts in this area transparent to our customers.
As an AI company processing millions of sensitive audio files for Fortune 500 companies every day, we continuously aim to not just meet, but to also exceed industry standards and customer expectations for security controls. Compliance with the SOC 2 Type 2 standard for security, availability, and confidentiality is just the latest in a series of ongoing security efforts and routine monitoring and audits by third-party organizations.
If you're a current customer and want to learn more, reach out to your Account Executive to sign an NDA and see our full SOC 2 Type 2 report for more detailed explanations of the security controls we have in place. And if you're thinking about using our API with your team or company, please contact Sales to learn about our security practices.
AssemblyAI's goal is to empower developers and product teams with easy access to State-of-the-Art, production-ready AI models to build exciting new features and solutions.
Over the past year, we've been fortunate to see more and more Enterprises launch exciting products and features on top of our AI models. With today's announcement of AutoTune and Premier Support, we're excited to be able to deliver better solutions for Enterprise teams already building, or looking to build, with our API.
For more information beyond what's highlighted in this post, check out our AutoTune, Premier Support, and Security pages. If these upgrades sound relevant to your organization, now is the perfect time to get in touch with our sales team here.
Coming Soon in Fall 2022 at AssemblyAI

redpajama_set_name: RedPajamaCommonCrawl


text:
White House Issues Statement On Donald Trump's Health and Coronavirus
President Donald Trump has yet to be tested to find if he might have contracted the coronavirus.
Speculation on the matter reached a boiling point during a press pool with the White House Press Secretary, Stephanie Graham. Reporters present pushed the Press Secretary on the issue. Her response was clear. President Trump has not been tested.
But Graham also revealed the reasoning which is consistent with Center For Disease Control guidelines.
"The President has not received COVID-19 testing because he has neither had prolonged close contact with any known confirmed COVID-19 patients nor does he have any symptoms," said Press Secretary Grisham.
"President Trump remains in excellent health, and his physician will continue to closely monitor him," Grisham said.
Vice President Mike Pence also confirmed that he has not been tested for the virus during a press conference with Coronavirus Task Force.
Per a Breitbart News report, President Trump did travel on Air Force One with Rep, Matt Gaetz who had contact with a person who tested positive for COVID-19 while he attending the Conservative Political Action Conference. Several other members of Congress, Ted Cruz, Paul Gosar, and Doug Collins, have self quarantined "out of abundance of caution."
Additionally, the new White House Chief of Staff, Mark Meadows, was exposed but tests came back negative.
As news of the virus spreads through the country, White House officials are working to point out what is true and what might be propaganda.
This is 100% fake news. @gabrielsherman did not reach out to me. False & sensational writing on this topic is irresponsible. POTUS has spent plenty of time w the press pool – simply ask ur colleagues. Nothing about your little college essay is funny or true & I want a retraction. https://t.co/tWEOuJw9Bm
— Kayleigh McEnany (@PressSec) March 9, 2020
The White House Coronavirus Task Force will address updates today in their daily briefing.


text:
Criminal Justice Journalism in the Public Interest
Columns & Interviews
Youth to Power
The California Justice Report
Support WitnessLA
2014 Election • FBI • Jail • LA County Jail • LASD • Law Enforcement • Paul Tanaka • Sheriff Lee Baca • U.S. Attorney
PANDORA'S BOX: After Closing Arguments the Sexton Case Goes to the Jury
by Celeste Fremon
"Mr. Sexton is nothing more than collateral damage" in a conflict involving "two massive law enforcement agencies fighting like children," said former U.S. Attorney Tom O'Brien as he delivered closing arguments in the week-long corruption of justice trial of his client, Los Angeles Sheriff's deputy James Sexton.
Sexton is one of seven members of the LASD who have been federally indicted for having allegedly hidden convicted bank robber/inmate turned federal informant Anthony Brown from his FBI handlers. Brown was part of a then-widening civil rights investigation by the FBI into corruption and brutality inside the LASD run county jails.
The weeklong trial went into the hands of the jury at around 11 a.m. Tuesday, after the prosecution and the defense each presented very different views of the defendant's alleged crimes.
O'Brien painted both the LASD and the FBI as engaging in a huge "jurisdictional turf war" in which Sexton, who had actually cooperated extensively with the FBI for more than a year, was scapegoated, while those who actually gave the orders for the actions for which the deputy has been charged remain unindicted.
"Not [former undersheriff Paul] Tanaka, Not [LASD Captain Tom] Carey. Not the Sheriff," O'Brien told the jury.
The events that underlie the case against Sexton were triggered in the summer of 2011 when, in the course of an undercover sting initiated by the FBI's Los Angeles office, inmate-turned-informant Brown asked a sheriff's deputy named Gilbert Michele to smuggle a contraband cell phone into Men's Central Jail in return for money. Brown was then to use the phone to report back to his federal agent contacts about alleged wrongdoing by deputies he observed inside the jail.
After a few weeks of use, however, the phone was discovered hidden among Brown's possessions (inside a Doritos bag) by a sheriff's deputy in the course of a routine search. When sheriff's investigators subsequently discovered that the contraband phone contained a call and text log devoted almost exclusively to contacting the FBI, a firestorm erupted among the sheriff's department's top brass, in particular then Sheriff Lee Baca and then undersheriff Paul Tanaka. They reacted by ordering Brown to be hidden away from the FBI's reach in farflung corners of the jail system, while he was questioned by LASD investigators. They also ordered covert surveillance, along with some in person bullying, of Brown's main handler, Special Agent Leah Marx, who headed up the corruption investigation of which Brown was a part.
The government's charges against Sexton are obstruction of justice and conspiracy to obstruct justice.
Conspiracy to obstruct means, loosely, that he was part of a group that knowingly tried to subvert a federal grand jury investigation. It also means that, if one of the members of the group did something that knowingly subverted the investigation—-like, say, harassing Marx—then all the conspirators are responsible for the action. According to the prosecution, the task with which Sexton was most involved was hiding Brown, as he was the one on the team with computer skills and thus was able to suggest how to game the LASD jail system database so that Brown appeared to vanish from it.
O'Brien maintains that the above actions of Sexton's and his alleged coconspirators were lawful, even if foolish, as in the case of going after Marx. More importantly, he contends that Sexton was merely doing what he was ordered to do by his superiors, as is required in a paramilitary organization.
The prosecution believes they have proved that the actions and the rest of his team were not lawful, that they were specifically designed to impede the FBI's investigation, and contends that just following orders is no excuse.
TALKING TO THE GRAND JURY
A large part of government's case comes down to what Sexton said in his grand jury testimony, in which he fully admitted his part in the operation that came to be known as Operation Pandora's Box. In fact, he obligingly described the hiding of Brown in colorful detail, and acknowledged there were elaborate attempts to keep Brown away from the feds specifically through the use of "smoke and mirrors."
O'Brien, Sexton's lawyer, also agreed that his clients grand jury testimony was crucial. But his take on how jurors must see Sexton's statements was very different than that of the government.
"This is the crux of the case," he said. "It is about how an over eager deputy agreed to cooperate with the FBI, and did work with the FBI." Special agent Leah Marx even gave him a cell phone so as to be able to get in touch with her and her colleagues without fearing the LASD would overhear and retaliate against him."
Sexton was interviewed by the FBI 37 different times, O'Brien pointed out. And he appeared before the Grand Jury twice.
"He was trying to please the FBI," O'Brien said in his closing. And indeed, the tone of Sexton's testimony that was read at trial leaves that impression. Sexton seemed, as O' Brien suggested, "eager to please."
All Sexton did, O'Brien said, was what he was asked to do by the FBI, or in the case of his superiors in the LASD, what he was ordered to do.
"The people giving the orders here, they've not been indicted. Not Tanaka, Not Carey. Not the sheriff."
But those higher ups were harder to indict, O'Brien said.
"What's easier? Get the over-eager kid, meet with him, give him a cell phone, get him on board, ask him some sloppy questions…..and then let's indict him, based only on his words."
After the discovery of the existence of Anthony Brown's informant status, his contraband cell phone, and the FBI's part in the undercover operation, "Sheriff Baca spun out of control," said O'Brien. "And then the FBI refused to talk to him."
Instead of paying attention to the "business of law enforcement," O'Brien concluded, the two behemoth agencies "got into a tiff each other."
"Now it's led to a young deputy sheriff facing the fight of his life."
The jury made up of five women and seven men appeared to listen very closely and seriously to the presentations by Assistant U.S. Attorney Margaret Carter for prosecution, former U.S. Attorney O'Brien for the defense and then the prosecution's rebuttal to the defense's closing present, presented by Assistant U.S. Attorney Brandon Fox.
"You may believe others may be guilty of the crime," Fox told the jury, in response to O'Brien, "but that's for another jury on another day."
Before the jurors went home on Tuesday afternoon, they asked to hear Sexton's hour-long plus grand jury testimony read back to them in its entirety.
THE TANAKA POLITICAL FACTOR
Former undersheriff Paul Tanaka, now one of seven candidates for sheriff, was a witness for the defense, and he maintained during his testimony last Friday, and cross examination on Monday, that all of his orders relating to the Anthony Brown matter were lawful. (Although he dodged quite a few other questions.)
On Monday, however, he conceded that he was the subject to an ongoing criminal investigation.
Since his appearance in court, there has been much speculation that his testimony and the outcome of the case could have an affect on his political candidacy.
Three of his fellow candidates—Robert Olmsted, Jim McDonnell, and Todd Rogers-–have called for him to withdraw from the race.
(You can find their statements here and here and here.)
Reed Galen, Tanaka's campaign spokesman said he has no intention of doing so.
Prophet Mo' Teff says:
I seriously question the reasoning of any candidate squandering campaign momentum to focus on calling for Tanaka to drop out of the race.
What difference would it make?
The ballots are printed, every candidate's name will be there whether they drop out or die of a heart attack this afternoon.
In fact, each candidate already has votes sitting at the registrar's office from absentee ballots already voted and returned, waiting to be opened and tallied on June 3.
If Tanaka declared himself officially out – what do you other candidates want?
Do you want Tanaka's campaign funds?
You might as well publicize that you are taking a big donation from Donald Sterling.
Do you want Tanaka's votes?
Which of you wants to tell Tanaka voters that you come closest to the choice which they lost when he drops out?
Calling for Tanaka to drop out drives the voter's attention into a cul-de-sac. That only helps a frontrunner. Its not good strategy for anyone else.
The Tanaka call-out implies a fundamental lack of confidence in the voters and in your own campaigns. If anyone hasn't got the message about Tanaka by now, they will never get it. In fact, by trying to force him out – you may simply harden the resolve of his base.
Bandwagon says:
So far jury is deadlocked. Sounds like a good sign for Deputy Sexton.
McNulty says:
Haven't heard anything we didn't already know.
I pissing contest between the FBI and Leroy.
The whole fiasco is a waste of tax payers money.
This could have all been handled civil without the FBI jumping the gun.
Nancy Drew says:
Pretty sad, Sheriff Ted Sexton befriends Sheriff Lee Baca. Ted's son James Sexton becomes LASD deputy. Ted accepts Baca offer to be a chief and resigns as Sheriff in Alabama. James indicted. Baca quits. Ted's fired by John Scott.
No matter how you feel about the Sexton's , Baca ruined their lives.
TheReachAround says:
"Overeager Deputy" sums it up right. As I said in previous post Mr. Sexton did whatever it took to be "in the car". Quite frankly he goes wherever the wind blows. When being a Baca boy didn't work out and he got caught, he was eager to tell the FBI everything.
How long did it take him to get on that specialized team after graduating the academy? And what we're some of the things he did to get there? And what kind of pull did he have with the Baca and Tanaka camp? I bet it was nice being one of the cool guys until you were forced to step up and do the right thing by way of threats of indictment.
And now you realize all that prestige meant nothing to the executives when it came down to whose careers they're going to save.
By the way, did anybody catch that? That swift appointment of his father to Chief with no California POST experience and swift exit the week of Baca's resignation? Or did I just dream that?
James Sexton is a stand up guy! He tried to help the FBI and got screwed. The jury is deadlocked and have twice told the judge there is no way for a verdict. How long will this judge keep making them go back??? Until he gets the verdict he wants???? Something isn't right here.
Stinkin Badges says:
First thing they tell you and teach you when you get promoted is it is not about you anymore. It's about your people, your subordinates. The people who rely on you for guidance and leadership.
Paul Tanaka and Lee Baca completely failed their people and The Department. If there are any LA County voters out there listening. DO NOT VOTE FOR Tanaka. He is the root and sole cause for all the corruption, deputy gangs, lawsuits, grey police work, and most importantly THE ENABLER, who allowed the young jail deputies to break bones of inmates. Tanaka hamstrung good supervisors, like Bob Olmsted and others from stopping the brutality. He not only enabled them to break bones, he glorified them with ink into his fraternal order of grey police work. Pathetic!
Lastly, all you Tawnected idiots who either associate with him, support him, or share his twisted morals and principles, I hope you have an exit strategy. God be with you, because no one else will be.
And yes, I'm mad. I'm mad because I'm ashamed at what my Department has become. I just want to be a proud deputy again and a member of a proud Department.
LATBG says:
Prophet, good perspective, but I'm inclined to disagree with you. First, Tanaka's base is a group of t-shirt clad folks who benefited from pay to play, they won't swing any election in any direction. Tanaka's name recognition is purely negative, which means he has to spend ten times the amount of money another candidate has to persuade a voter. There are too many choices on the ballot that are not grimy.
I don't think any camp lacks confidence in their campaign, this is a very low-information voter base. An an example, Block in his prime mustered a mere 11% name recognition as the sitting sheriff. At this point it's all about earned media, and Tanaka provides ample opportunity for his rivals to beat the dead horse.
Tanaka's base, if he even has one, is built on voter ignorance – not exactly a winning strategy.
Harassment of Grieving Families Is More a Problem of LASD Management and Policy Than Individual Deputies, Says Inspector General
Nearly 3,400 People With Mental Illness Could Be Safely Diverted From LA County Jail, Says New Report
DOJ Sues San Bernardino Sheriff's Dept. and Hesperia Over Racially Discriminatory Rental Ordinance
LA Sheriff's Deputy's Condition Somewhat Improved After Being Badly Injured On Duty When Struck By A Drunk Driver Monday Night
Grieving Families Report Harassment From LASD Deputies, Civilian Oversight Commission Votes to Investigate
ACLU Hits LASD With Lawsuit Over Failure to Release Misconduct Records Under Police Transparency Law
Subscribe to the California Justice Report:
Organization (optional) :
Email Address :*
10 Rules of Commenting


Accidents are stressful enough, finding a good quality repairer who you can trust to maintain the value of the second biggest asset you own can add even more stress. As your local repairer you can count on Ian to give a no-nonsense appraisal of the work required to repair your vehicle, and to ensure an affordable and quality repair is carried out. Whether you are claiming on a 3rd party insurance for a no fault accident, claiming on your own comprehensive policy, or funding repairs yourself, Ian can repair any make or model of vehicle from classic to modern including vans and light commercials. Contact us today using the schedule an appointment link, by email at the address below, contact form or give Ian a call to get your car back on the road as good as new.
No matter if your car is merely looking old and tired or has been the victim of vandal damage or car parking scuffs and scrapes, Ian can restore your paintwork finish back to new. From metallic and pearlescent type finishes to difficult to match OEM shades, Ian has a wealth of experience in respraying vehicles to achieve a flawless finish. Ian undertakes work both as insurance claims and from private paying customers where affordable prices ensure you can get the work you need done at a price you can afford.
Classic cars often require specialist skills to restore. Ian's extensive (48 years) experience means he's as used to working on classic vehicles and more modern models. With limited replacement parts available, a lot more craftsmanship is required to ensure existing bodywork can be repaired effectively, Ian's expertise in repairs right up to a classic Rolls Royce ensures whatever your pride of joy's age, make or model Ian can bring it back to show-winning standard at an affordable price.
Whether you've suffered damage from kerbing your wheel, or hit a pothole, want to repaint your wheels a different colour or restore their original finish, Ian can probably help you bring them back to new at a lower cost than replacement. From diamond cut wheels that have lost their finish, to peeling lacquer and paint or welding repairs - Ian can tackle most jobs at an affordable price. Contact Sprayfit Preston today and schedule a no obligation quote.
From minor dings and scrapes to more complicated panel damage, rust perforation and panel alignment issues, Ian's attention to detail ensures he can restore your vehicle to factory standards using the most cost effective means possible.
From bodykits to resprayed alloys, Ian can turn your dream motor into a reality. Sprayfit Preston offers a wide range of capability from de-chroming vehicles' brightwork to spraying and fitting custom bodykits, spoilers and mirrors. From a pimped out van to a Overfinch Range Rover, Ian can help you turn your vehicle into a head-turning show winner!


ONLINE STORE | 17TH C - 19TH C. FURNITURE | SWEDISH TRESTLE BASE FARM TABLE MID-19TH C.
SWEDISH TRESTLE BASE FARM TABLE MID-19TH C.
Product Name: SWEDISH TRESTLE BASE FARM TABLE MID-19TH C.
This is a great late 18th/early 19thcentury Swedish trestle base farm table. The table retains its original black paint on the base; the top is a scrubbed pine with traces of the original black paint. This table will seat six; it would also make a unique desk or writing table. I love Swedish pieces when they retain their original paint and especially, when the original paint is black. Please contact me for additional information, photos and retail/trade pricing. All inquiries are welcome--thanks for visiting.


text:
UN Votes in New Members of Security Council
Posted on June 13, 2017 in Uncategorized
On 2 June, the 193 – member United Nations General Assembly elected Equatorial Guinea, Ivory Coast, Kuwait, Peru and Poland to the UN Security Council for a two-year term due to begin on 1 January 2018.
The Netherlands meanwhile was elected for a one-year term after it reached a deal with Italy last year to split a two-year term. Voting between the two countries was deadlocked last year. Italy and the Netherlands however later reached a deal, agreeing that Italy would serve on the Council for 2017 and then step down to allow the Netherlands to be elected for 2018.
While all the countries were running unopposed, they still required more than two-thirds of the overall vote in order to win a seat. Ivory Coast received 289 votes, Equatorial Guinea got 185, Kuwait received 188, Peru won 186, Poland received 190 while the Netherlands received 184 votes. The Council is made up of ten elected members, five voted on each year and five permanent veto-powers: The United Stats, Britain, France, China and Russia. The Council is the only UN body that can make legally binding decisions and has the power to impose sanctions and authorize the use of force. In order to ensure geographical representation to the Council, there are five seats apportioned for African and Asian states; one for Eastern European states; two for Latin American and Caribbean states and two for Western European and other states. Regional groups generally agree upon the candidates to put forward and competitive races for seats are increasingly are. Human rights activists however have stated that this was a "serious problem." According to Human Rights Watch (HRW) UN Director Louis Charbonneau, "member states should be able to choose whether or not they trust a country like Equatorial Guinea with the maintenance of international peace and security," adding "Equatorial Guinea is a country that has harassed human rights defenders and civil groups, often with arbitrary detentions." He went on to say that "as the Security Council increasingly mainstreams the promotion of human rights, we hope Equatorial Guinea wont push back o undermine that." The government of Equatorial Guinea has denied accusations of corruption and human rights abuses.


Bug 1452225 - Rebuild the whole subdoc when the caret changes, but don't invalidate the nsDisplaySubdocument.
If you navigate to chase.com and click around on the entry fields in the upper right, the background starts to bleed through.
Matt, this is something we know about?
I'm still seeing weirdness with the login box with a build that includes the fix for bug 1451971.
This seems like a pretty serious issue. Can we up the priority? Chase is kind of a bug bank.
I can reproduce this really easily in my Nightly, but not in a local build. Trying to figure out what the difference is so that I can debug this.
Still no luck, even with the same profile.
I can't reproduce it in the try build, hopefully that's a good sign.
I talked with Mike and he told me that the affected platform was Windows, he also verified this issue with the latest FF Nightly 61.0a1(2018-04-26) and he can't reproduce it anymore.
I tested on Windows 10 x64, Ubuntu 16.04 and Mac OS X 10.13 and I can't repoduce it with FF Nightly 61.0a1(2018-04-26).
Based on this I will mark this as Verified fixed.


text:
Sign up or log in to Magoosh GMAT Prep.
Magoosh GMAT Blog Everything you need to know about the GMAT
GMAT Sections
Coordinate Geometry
Permutations and Combinations
Complete Guide to the GMAT
GMAT Integrated Reasoning
GMAT Idiom eBook
Best GMAT Books & Resources
Recommended B-School Sites & Resources
Best GMAT & MBA Admissions Resources
Hansoo Lee Fellowship: Donate to Support Future Entrepreneurs
By Bhavin Parikh on December 16, 2014 , UPDATED ON January 12, 2015, in Announcements
Please donate to support the memory of Hansoo Lee, a co-founder of Magoosh, without whom we wouldn't have the opportunity to work with amazing students like you. 🙂
Hansoo Lee, co-founder and former CEO of Magoosh, and one my closest friends, passed away nearly 2 years ago after a battle with non-smoker's lung cancer. Hansoo was 35. In Hansoo's honor, Wendy (Hansoo's fiancée), Pejman (a fellow Magoosh co-founder), and I created the Hansoo Lee Fellowship with support from UC Berkeley and many others.
Through this fellowship, we provide mentorship and a $5,000 stipend to each of the 1–2 highly qualified Berkeley-Haas MBA students selected as fellows. These are MBA students who opt to pursue their personal ventures, as Hansoo and I did with Magoosh, in lieu of a traditional summer internship.
I'm excited to announce that Wendy Lim, Hansoo's fiancée, has committed $5,000, and Magoosh has committed $10,000, towards a challenge match for the Hansoo Lee Fellowship.
Any donation given to the fellowship by the end of the year, up to the $15,000 total, will be matched dollar-for-dollar. To date, we've raised a little over $200,000. If we reach our goal of $250,000, the fellowship will be self-sustaining and able to support aspiring entrepreneurs for many years to come.
To donate, click here.
An Update on Past Hansoo Lee Fellows
Left to right: Andre Marquis, Bhavin Parikh, Alastair Trueger, Johannes Koeppel, Wendy Lim
Last summer's fellows are back at Haas for their 2nd year and both have continued to pursue their ventures.
Johannes Koeppel (MBA'15) of Wetravel reports the following: "In the last three months, we successfully released the beta version of Wetravel. Since then, we have organized 20 trips and currently have more than 250 paying customers." Wetravel has raised $55,000 from startup competitions and other investments and plans to raise their seed round in mid-2015.
Wetravel is at the UC Berkeley's Skydeck Accelerator and has grown its team, recently adding a designer to provide independent tour organizers with the best possible platform to facilitate their small group tours. In addition to perfecting their product, Wetravel will spend the coming months actively onboarding tour organizers on its platform.
Alastair Trueger (MBA'15) of Teaman & Company informed us that the company "has been going incredibly well. After graduating from 500 Startups, we moved back to Berkeley and into the Skydeck Accelerator. We have focused on building out the three pillars of our business: fantastic jewelry, our web and service experience and our 3-D printing sample kit."
Teaman & Company has expanded its team, adding a jewelry sourcing and manufacturing expert and a sales manager with years of enterprise sales experience, and is in the process of hiring a creative director. Sales at Teaman continue to grow, and they recently closed a large $20,000 sale. Teaman has also opened its round of funding and has already closed $20,000 (with more to come).
GMAT Practice Test Resources
Complete Guide to the GMAT (eBook)
GMAT Integrated Reasoning (eBook)
The GMAT Idiom Ebook
About Bhavin Parikh
Bhavin sets the vision and strategy for Magoosh, along with whatever else needs to be done. With a BS/BA in Economics and Computer Science from Duke University and an MBA from the Haas School of Business at UC Berkeley, he's on a mission to change the way people learn and how they think about learning. Years ago, Bhavin played on several Nationals-level ultimate frisbee teams. Today, he's our resident gelato connoisseur.
The GMAT/MBA Library | Add your site
GMAT® (plus a listing of any other GMAC® trademarks used on this web site) is a registered trademark of the Graduate Management Admission Council®. The Graduate Management Admission Council® does not endorse, nor is it affiliated in any way with the owner or any content of this web site.
© 2019 Magoosh GMAT Blog. All Rights Reserved.


Sheffield Wednesday Under-18 and Under-23 fixtures for the 2018/19 campaign have been revealed.
The Owls Under-18s begin their campaign on Saturday with a home clash against Queens Park Rangers.
Kick-off at Middlewood Road is 11.00am.
Meanwhile, the Under-23s kick-off their Professional Development League 2 campaign on Monday 13 August at home to Millwall.
Neil Thompson's side face the Lions at Middlewood Road in the 12 noon kick-off.
For the full Under-18 fixture list CLICK HERE. For the full Under-23 fixture list CLICK HERE.


text:
Q: Python 3 not raising exception for invalid file name How can I get Python to raise an exception on opening a file with an invalid file name? Example, I have this code
def write_html_to_file(set_name, pid, html_text):
    if not os.path.exists(HTML_DUMP_DIR_NAME):
        os.makedirs(HTML_DUMP_DIR_NAME)
        path = (HTML_DUMP_DIR_NAME + set_name + '-' + pid + '.html')
    try:
        with open(path, "w+", encoding='utf-8') as html_dump_file:
            html_dump_file.write(html_text)
    except OSError as e:
        logging.basicConfig(filename=LOG_FILE_PATH, level=logging.ERROR)
        logging.error('Failed to create html dump. '
                      + ' error=' + e
                      + ' file_name=' + path)

Assume that the value of path is 'Folder1/SubFolder/Some Title: thing.html' and the file does not exist yet.
What I expect is that Python will raise an OSerror with Invalid Arguments, or something like that. What actually happens is it creates a file called 'Folder1/Subfolder/Some Title'. Notice the filename stops at the invalid character
I know I can create my own exceptions that I can raise if I detect an invalid name, but in this case that's pointless. I only care if I'm trying to do something invalid at the OS level. It seems in this case its failing silently and I don't like that.
Edit: Sorry, I guess my question wasn't clear.

*

*I do want it to create a file, that part I'm happy about.

*The problem is that the file-name that gets created stops at the
invalid character. I want the entire name to be there.

*My question is, Why doesn't python raise an exception so I can
handle it when it encounters an invalid character

A: So it turns out (thanks eryksun), specifically the ':' in the string you pass to open() actually is a delimiter on NTFS systems that signifies that you want to write to multiple data streams:

*

*https://learn.microsoft.com/en-us/sysinternals/downloads/streams

*https://learn.microsoft.com/en-us/windows/desktop/FileIO/file-streams
My code works fine for any other character that is invalid in file names (* for example). So the solution I came up with is to replace any ':' in my filename with a - before I pass it to open()
base_file_name= base_file_name.replace(':', '-')

':'s are invalid in filenames anyway so this is fine for me.

redpajama_set_name: RedPajamaStackExchange


Calan Porter has a spectacular beach however the road leading down to the beach is extremely steep. Access with a mobility scooter could be dangerous and we do not recommend this.
The beach is not accessible by bus and there is only 1 Disabled Parking Place !
Once you are at the beach you shall enjoy the spectacular views of the bay cove and sea. There are restaurants, bars and a beach shop. There is a small playground and a wooden cladding walkway leading to the beach.


text:
La Chaine
Chinafrique
Droit et libertés
Francafrique
Franc CFA
Panafricanisme
The World Bank and UNICEF deliver vital supplies for Niger's Covid-19 response
The World Bank and UNICEF today delivered $3 million worth of medication and equipment to Niger in support of the government's response to the COVID-19 pandemic. The arrival of the shipment of critical supplies was marked by a small ceremony attended by Niger's Minister of Health, the World Bank Country Manager and the UNICEF Country Representative.
20 Juil 2020	Afrique Media
The shipment is part of a trilateral agreement through which UNICEF is supporting the delivery of essential emergency supplies purchased by Niger's Ministry of Health with financing provided by a $13.95 million World Bank-financed COVID-19 Emergency Response Project, approved on April 15, 2020.
"This shipment will enable us to address some of the gaps and needs within the health response to the COVID-19 pandemic. Some of the supplies will also help protect our health workers who are risking themselves trying to protect us all", said Dr Idi Illiassou Maïnassara, Minister of Public Health.
This consignment includes critical medication and equipment needed for the treatment of coronavirus infections, personal protective equipment and kits for front-line healthcare workers, equipment for temporary healthcare facilities and other health equipment and medication to be available to health facilities and communities where there is a need.
"The COVID-19 pandemic highlights the importance of investing in resilient health systems that can screen, diagnose, treat people and break the chains of transmission. Our health operations aim to boost Niger's preparedness and ability to respond to the pandemic and protect the people most exposed to its damaging effects. Our goal is not only to save lives, but to help country build stronger, more resilient health systems to be better prepared for future disease and ensure no-one is left behind" said Joelle Beatrice Dehasse, World Bank Niger Country Manager.
The World Bank and UNICEF work closely with the Government and other partners to step up the response and contain the spread of the COVID-19 virus in the country, already facing the consequences of multiple crisis including malnutrition, conflicts and natural disasters.
In June, UNICEF already airlifted almost 10 tons of the Government-purchased vaccines to maintain routine immunization while keeping health workers and communities safe. Keeping immunization systems and structures active throughout this time is more critical than ever before.
UNICEF also ordered additional nutrition supplies in anticipation of a possible surge in admissions for severe acute malnutrition. Latest estimates have shown a possible increase of severe acute malnutrition cases due to the repercussions of COVID-19. In addition, UNICEF is putting in place actions to protect the diets and nutrition services and practices of pregnant women and breastfeeding mothers during this critical period.
"The COVID-19 is a dire threat, but it can also be turned into an opportunity. We must protect the gains made during this pandemic, such as the great mobilization around the importance of handwashing practices and the strong engagement and solidarity at community level in the fight against the virus. It is the opportunity to chart a brighter future for children. There's still a lot of potential that could be gained from the current situation," said Dr. Felicite Tchibindat, UNICEF Representative in Niger.
Niger reported its first case of Covid-19 on March 19, 2020. As of July 13th, the country has recorded 1,099 confirmed cases of coronavirus (COVID-19), of which 992 people have recovered, 39 are under treatment and 68 deceased.
Afrique Media TVLe monde c'est nous.
Services 24h/24
Tweets afm
Recevez par mail les dernières actualtités
L'actualité du monde
Copyright © 2021 Afrique Media | La Télévision Panafricaine. Tous droits sont réservés. Designed by
Media Press Africa


text:
Emotiv (von lat. emovere "erregen, in einen erregten Zustand versetzen", engl. emotive und frz. émotif "gefühlsbetont, gefühlsbezogen") ist ein Fremdwort, das in unterschiedlichen Bedeutungen gebraucht wird:

 Als Adjektiv wird emotiv besonders in der Zusammensetzung emotive Funktion in der Semiotik, Kommunikationswissenschaft und pragmatischen Sprachwissenschaft zuweilen für die expressive Funktion von sprachlichen und anderen Zeichen verwendet, um die Mitteilung der inneren Gefühls- und Bewertungshaltung des Sprechers/Senders von anderen Funktionen der Äußerungs- oder Kommunikationshandlung (wie der deskriptiven Mitteilung eines Sachverhalts oder der Appellfunktion an den Hörer/Empfänger) abzugrenzen. In der Sprechakttheorie gehört die emotive Funktion zu den illokutionären Funktionen von Sprechhandlungen.
 In der Psychotherapie versteht man unter Rational-Emotiver-Therapie eine Verhaltenstherapie, die einstellungs- und gefühlsbedingte Verhaltensstörungen therapiert.
 Unter dem Einfluss des Englischen wird Emotiv zuweilen als Substantiv gebraucht (das Emotiv, Plural die Emotive), um sprachliche Ausdrücke des Gefühls (z. B. Interjektionen) oder graphische Kennzeichnungen einer Gefühls- oder Stimmungslage ("Emoticons") zu bezeichnen.

Literatur
Helmut Glück (Hrsg.): Metzler Lexikon Sprache. Metzler, Stuttgart 2000 ISBN 347601519X
Alburey Castell: Meaning: Emotive, Descriptive, and Critical. In: Ethics 1949: 60, S. 55–61

Wort

redpajama_set_name: RedPajamaWikipedia


text:
Q: designing a backend with an mvc framework in php I do not know how to design a backend for my application. Of course I can always just create simple CRUD operations but I recently ran into the concept of scaffolding and some more "techniques" for your backend to be matched against your database schema.
Any ideas on how I can use this "scaffolding" and other "backend design techniques"?
of course I'm assuming that we're using an MVC framewoek here(I am using the PHP framework Kohana at version 2.3.4)
So here's a better question : Are there frameworks or guidelines for creating backend CMS in mvc frameworks (for production, that is)?
I recently saw Django's backend interface...anything similar from any of the PHP frameworks?

A: Scaffolding is a technique or a functionality often provided by modern MVC frameworks like CakePHP and ZendFramework which allows developers to quickly come up with a temporary platform where they can build their app on top of.
This usually means writing the minimal amount of code to come up with CRUD functionality.
For example in CakePHP, you only have to write the following code and wallah!
<?php

class FooController extends AppController {
    var $scaffold;
}

?>

However, note that scaffolds should only be temporary and you should replace them with actual CRUD screens especially when your app goes to production.
Based on what I know, Kohana doesn't natively support scaffolding.  However there are modules that will allow such functionality.  I haven't used any of the following but they might give you some ideas.
Scaffolding module for Kohana PHP
John Heathco's scaffolding module


text:
RIP Eyeshot
EYESHOT IS OVER
Nearly ten years exactly after conception, Eyeshot is over for now. We have not much e-enthusiasm, and we rarely read "online lit," so why provide it? Books are where it's at! Real live bound specimens you can throw across the room. Buy one today! Like the Hunger Artist, Eyeshot now melts into the straw of its cage, so it can be replaced by a lively panther. The site will not disappear. The archives will remain. This home page here may sometimes propagate the editor's purposes. If you're feeling nostalgic, here's a collection of some of the more popular things posted here. Thanks to everyone who ever contributed, submitted, or visited. Lates for now. More later . . .
Good luck and best wishes Lee Klein for a decade of dedication, and for being one of the first to get this "online lit" thing started. I feel like any more commentary on this would only get us in trouble. I appreciate Eyeshot very much — as I think many of us do — and will say "thank you."
Uncategorized / 26 Comments
July 25th, 2009 / 1:31 pm
Bozipede
Bozipede: a type of famous, old-guard internet literary magazine insect, commonly called a "pindle" or a "pindle bozz." The bozipede is also called a "pin del dee boz" by the brave, a "pee bozz" by people who spend too much time on their hair, and a "pin diddily boss" by the same people who think it's funny to mix Kool-Aid and hydroplaning. Bozipedes are well-regarded for being interesting and awesome and spinning out six stories of varying forms, styles, and effects every couple months or so.
That's right: a new PBoz is out.
Gawk the new fictive dreams from Digby Beaumont, Kristin Fouquet, Chelsey Flood, Tai Dong Huai, Patti Jazanoski, and Lydia Copeland.
What I've always liked about Pindeldyboz is how so many of the stories they publish seem small at first–scenes, Christmas muzak, malls, mice, lunch, a few teetering emotions–but always turn irrevocably weird. This isn't categorical: lots of stuff gets published there that has nothing to do with this feeling of mine. But I feel like Pindeldyboz has an eye for chewy realism in the way that Eyeshot does chicanery or Hobart does mathematician truck driver humor.
All of these magazines have RSS feeds to which you should subscribe, so you won't even need me–your hot yogurt man, your lumberjack-in-the-rain–to tell you these things. Yes: what I aim for is ultimate dispensibility, also known as "the opposite of sugar" or "not the new Pindeldyboz."
Web Hype / 2 Comments
December 20th, 2008 / 3:57 am
Supersucker: A Novel by Lee Klein
Lee Klein, our own Massive Person No.3, wrote a novel Supersucker which can now be easily accessed as a pdf from the Supersucker page on eyeshot.
(I hope I'm not stepping on any toes Lee), but if you're a publisher, please take a look. According to Klein, it's "a simple good-natured love story involving a woman with immaculate conception disorder and an autofellator." It also features remarkably adroit illustrations by the author.
Also, check out The Eyeshot Gold Star Reserve, a "best of" eyeshot.net thus far, going back into the archives for gems, including HTMLGIANT friends Blake Butler, Elizabeth Ellen, Kevin Sampsell, Jensen Whalen (Whelan?), and others.
There's also Randa Jarrar's piece which was included in Eggers' Best Non-required Reading some years back, and my personal favorite, "Why You Should Touch My Balls," by a mysterious Will Ratblood, who per his website, seems to be 'around,' however obscurely.
Everything eyeshot continues to dazzle.
Author Spotlight / 6 Comments
December 16th, 2008 / 7:46 pm
Eyeshot's Readerly Resonance Chamber
Lee Klein, an official HTMLGIANT massive person, under the pseudonym 'Throop Roebling,' has been writing reviews of books and music (in his 'upon listening' series) sporadically in eyeshot for sometime. Throop has also been known to publish amazing stories in eyeshot, no doubt nepotism, especially this (mock?) homage to the last chapter in Ulysses.
Anyways, Klein has unmasked himself (or at least I am right now) with eyeshot's new "Readerly Resonance Chamber," wherein the vigorous writer peruses and pursues a handful of books. Klein has a meaty way with words, and thoughts, and I can't wait for more. My reading list just swelled, and comparing myself to Klein, my brain just shrunk.
November 19th, 2008 / 1:07 pm
Massive People (3): Lee Klein
If you don't know who Lee Klein is, it's time you knew. Let's put it this way: if Lee Klein were a presidential candidate, I might have voted this year. Alas.
Anyhow, when he's not busy editing Eyeshot (one of the oldest in-house literary mags still killing it), writing amazing rejection letters, he's also one hell of a writer (recently on AGNI and in Black Warrior Review, both of which you can find linked at the first link in this post).
After the break, 5 questions for a very massive person.
Massive People / 17 Comments
November 4th, 2008 / 1:26 pm
Eyeshot's Tentacled Rejecting Appendage
The best thing about internet-published fiction writing a few years back was getting a rejection letter from Lee Klein at Eyeshot.
The best. Seriously.
"At first I thought you took some pages from a Frank McCourt memoir, copied them, then added a dash of Pac Man."
Lee was funny. Lee was direct. Lee was fucking merciless.
(Lee is still all these things, by the way. Eyeshot remains. Eyeshot continues to publish and, as far as I know, continues to reject. But, now, on the submissions page, you read: "PLEASE REALIZE we used to try to respond very quickly, often in mere minutes, generally within 48 hours. And that we used to tend to have some fun with our rejection letters. Now we might just send a link to a beautiful form letter. But occasionally we may still respond personally and performatively and whatever, depending on time and energy.")
His rejections sometimes felt like a prolonged, broken narrative, a story being sent out to the world, one person at a time. Luckily, he collected them for us. READ MORE >
October 3rd, 2008 / 4:43 pm
A JPEG PAINTS 1000 WORDS
The photos which accompany Pequin's stories are always stunning, and as much as I advocate the breadth of words, I think they augment the stories.
Steven Coy (editor) has explicitly cited Lee Klein's eyeshot for the image per text inspiration, the latter whom understandably didn't cite New Yorker for having always done the same. In the New Yorker, the pairing of image and story seems conceptually unconscious. (I'm sure the politics of publishing both story and image takes precedence over any editorial ideology, if any, concerning the pairing.)
Eyeshot's photos are quirky and playful, but they are somewhat detached from the story itself, and celebrated more for their inherent attributes. Coy is onto something different here. The photos at Pequin act as a kind of surrogate or residual 'scene' for/from the story; either that, or as a clever visual pun.
For example: Dream Date, about a not-so-great boyfriend and his girlfriend's unmet needs, is accompanied by a scene looking down a pink stairwell into a dark hallway, a composition which shares the orientation of a woman's spread legs. There's even a light bulb (anatomically consistent) which supposes a clitoris.
In Animal Parade, a story about the mishaps of taking a wrong exit on the freeway, the image is of freeway periphery (cinderblock walls, telephone polls, fastfood signs, etc.). The photo has a way of snapping into POV function, embodying the view of characters in the story.
Per Pequin's writer's guidelines, stories are to be under 1000 words (ideally exactly 1000 words). Coy seems hell-bent on toying with the whole 'picture paints a thousand words' thing. Good for him, and good for us.
Uncategorized / 3 Comments
October 2nd, 2008 / 3:40 pm


Books about vaping? Seems like an odd subject matter, doesn't it? I mean, you get books about books about books about Lord of The Rings and there are a myriad of options if blogging is your thing.
But vaping? Books about VAPING? Surely not, right?
Think about all the DIY aspects there are to vaping. Things like building your own atomisers and mods, for starters, or the most popular of all: creating your own e juice.
Yep, there's TONS of scope for books on vaping. And three of our favourite happen to written by the same dude, a man called Donald Blakey, who is apparently in the process of writing a series of books about all aspects of vaping.
These are ALL available on Amazon and are actually really rather helpful. I've been tinkering with e juice making for years now, but Donald's book on creating your own e juice line featured a ton of new and helpful information that really improved my game in this regard.
Granted, these books won't be for everybody — only the most nerdy vapers among us, but I did learn a lot from reading them, and I would wholeheartedly recommend them to anyone who's interested in building their own gear and ejuice.
Available in paperback or Kindle, the trio of vaping books are cheap as chips as well — one of them is even free via Amazon Unlimited.
If I'm totally honest, I wasn't really convinced about these books prior to reading them. I mean, I love vaping… but reading about it? That seemed like a bit much, even to me. Even more so when there's a new Stephen King novel out.
But I was wrong. These are well worth the time of any serious vaper. Once I'd read one I couldn't wait to start the other. They're not too long, either, so you can blast through them in a couple of days.
I would recommend the paperback versions too, as they are easier to reference when you're in the middle of cooking up a batch of something or half way through a build.


text:
package com.intellij.xdebugger.impl.actions;

import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.xdebugger.XDebugSession;
import com.intellij.xdebugger.XDebuggerManager;
import com.intellij.xdebugger.impl.DebuggerSupport;
import org.jetbrains.annotations.NotNull;

public class PauseAction extends XDebuggerActionBase {
  @Override
  @NotNull
  protected DebuggerActionHandler getHandler(@NotNull final DebuggerSupport debuggerSupport) {
    return debuggerSupport.getPauseHandler();
  }

  @Override
  protected boolean isHidden(AnActionEvent event) {
    if (!isPauseResumeMerged()) {
      return super.isHidden(event);
    }
    Project project = event.getProject();
    if (project == null) {
      return false;
    }
    XDebugSession session = XDebuggerManager.getInstance(project).getCurrentSession();
    if (session == null || session.isStopped()) {
      return false;
    }
    return super.isHidden(event) || session.isPaused();
  }

  static boolean isPauseResumeMerged() {
    return Registry.is("debugger.merge.pause.and.resume");
  }
}

redpajama_set_name: RedPajamaGithub


text:
University of Canberra revives mainframe degree course
As part of mainframe trainee program developed with tertiary education provider Column 72
The University of Canberra is reviving its mainframe degree with a cohort of at least 25 students expected to start the Bachelor of Information and Mainframe Technology course in December.
The university partnered with tertiary education provider Column 72 to develop a three year Mainframe Trainee Program, which includes the degree and paid traineeships at companies that use IBM Z mainframe machines.
The course involves face-to-face and online learning and placements working on some of the 63 mainframes (insourced and outsourced) in use in Australia.
It is planned that students will learn about traditional and emerging languages and technologies with access to the full suite of IBM's System Z software.
"The University of Canberra is pleased to be partnering with Column 72 to develop this ground-breaking program to ensure IT graduates are equipped to handle challenges of the future," said acting vice-chancellor Professor Nick Klomp.
"The proposed program is both practical and academically sound to meet industry needs and ensure that graduates will be employable once qualified," he added.
The course – which is still to get final approval by the university's academic board – is a revival of a similar one that ran between 2001 and 2011. It came to an end as a result of the global financial crisis, but not before graduating 262 students.
"I look forward to watching the trainees learn at the University and progress with their sponsoring employers during this dynamic and rapidly evolving time in the IBM Z space," said Column 72 director Dr Murray Woods.
Its rebirth is a response in part to a growing crisis resulting from an ageing workforce of those skilled in mainframe technologies. According to BMC, nearly half (47 per cent) of the mainframe workforce is aged over 50. Only seven per cent are under 30.
Read more CBA looks forward while paying tribute to yesterday's tech
'Staffing and skills shortage' was reported as the top challenge (second only to software costs) of survey respondents.
Although the 'mainframers' might be moving on to retirement, the machines are not going anywhere.
In the past 12 months alone the Department of Human Services, Australian Taxation Office, Queensland Government, and South Australian Government have all signed, sought or extended major mainframe deals. Westpac, the Reserve Bank of Australia, Harvey Nash, Suncorp, a number of government agencies and Bankwest have all sought people with mainframe experience in recent months.
According to IBM, the dominant player in the market, its mainframes run 68 per cent of the world's production workloads, handle 87 per cent of all credit card transactions – meaning "just about everyone has used a mainframe computer at one point or another," the company says – and are used by 44 of the top 50 banks and 18 of the top 25 retailers.
Read more University of Canberra slashes data centre footprint
Those interested in taking the course have until August to apply via Column 72 or with the university. Applicants must have a Diploma of IT from TAFE or be in the first year of an IT degree at an Australian university.
Australian companies still investing in mainframes: Survey
IBM finds growth in security, cloud
Google launches quantum framework Cirq, plans Bristlecone cloud move
Tags IBMmainframeSystem zbig ironUniversity of CanberraColumn 72IBM Z
More about AustraliaAustralian Taxation OfficeDepartment of Human ServicesIBMindeedQueensland GovernmentReserve Bank of AustraliaSouth Australian GovernmentTAFETechnologyUniversity of CanberraWestpac


text:
<?php

namespace Composer\Command;

use Composer\DependencyResolver\Pool;
use Composer\DependencyResolver\DefaultPolicy;
use Composer\Package\CompletePackageInterface;
use Composer\Package\Version\VersionParser;
use Composer\Package\BasePackage;
use Composer\Package\Version\VersionSelector;
use Composer\Plugin\CommandEvent;
use Composer\Plugin\PluginEvents;
use Composer\Package\PackageInterface;
use Composer\Semver\Constraint\ConstraintInterface;
use Composer\Util\Platform;
use Symfony\Component\Console\Formatter\OutputFormatterStyle;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface;
use Composer\Repository\ArrayRepository;
use Composer\Repository\CompositeRepository;
use Composer\Repository\ComposerRepository;
use Composer\Repository\PlatformRepository;
use Composer\Repository\RepositoryInterface;
use Composer\Repository\RepositoryFactory;
use Composer\Spdx\SpdxLicenses;
use Composer\Composer;
use Composer\Semver\Semver;

class ShowCommand extends BaseCommand
{

protected $versionParser;
protected $colors;

private $pool;

protected function configure()
{
$this
->setName('show')
->setAliases(array('info'))
->setDescription('Show information about packages')
->setDefinition(array(
new InputArgument('package', InputArgument::OPTIONAL, 'Package to inspect. Or a name including a wildcard (*) to filter lists of packages instead.'),
new InputArgument('version', InputArgument::OPTIONAL, 'Version or version constraint to inspect'),
new InputOption('all', null, InputOption::VALUE_NONE, 'List all packages'),
new InputOption('installed', 'i', InputOption::VALUE_NONE, 'List installed packages only (enabled by default, only present for BC).'),
new InputOption('platform', 'p', InputOption::VALUE_NONE, 'List platform packages only'),
new InputOption('available', 'a', InputOption::VALUE_NONE, 'List available packages only'),
new InputOption('self', 's', InputOption::VALUE_NONE, 'Show the root package information'),
new InputOption('name-only', 'N', InputOption::VALUE_NONE, 'List package names only'),
new InputOption('path', 'P', InputOption::VALUE_NONE, 'Show package paths'),
new InputOption('tree', 't', InputOption::VALUE_NONE, 'List the dependencies as a tree'),
new InputOption('latest', 'l', InputOption::VALUE_NONE, 'Show the latest version'),
new InputOption('outdated', 'o', InputOption::VALUE_NONE, 'Show the latest version but only for packages that are outdated'),
new InputOption('direct', 'D', InputOption::VALUE_NONE, 'Shows only packages that are directly required by the root package'),
))
->setHelp(<<<EOT
The show command displays detailed information about a package, or
lists all packages available.

EOT
)
;
}

protected function execute(InputInterface $input, OutputInterface $output)
{
$this->versionParser = new VersionParser;
if ($input->getOption('tree')) {
$this->initStyles($output);
}

$composer = $this->getComposer(false);
$io = $this->getIO();

if ($input->getOption('installed')) {
$io->writeError('<warning>You are using the deprecated option "installed". Only installed packages are shown by default now. The --all option can be used to show all packages.</warning>');
}

if ($input->getOption('outdated')) {
$input->setOption('latest', true);
}

if ($input->getOption('direct') && ($input->getOption('all') || $input->getOption('available') || $input->getOption('platform'))) {
$io->writeError('The --direct (-D) option is not usable in combination with --all, --platform (-p) or --available (-a)');

return 1;
}

if ($input->getOption('tree') && ($input->getOption('all') || $input->getOption('available'))) {
$io->writeError('The --tree (-t) option is not usable in combination with --all or --available (-a)');

return 1;
}

 $platformOverrides = array();
if ($composer) {
$platformOverrides = $composer->getConfig()->get('platform') ?: array();
}
$platformRepo = new PlatformRepository(array(), $platformOverrides);
$phpVersion = $platformRepo->findPackage('php', '*')->getVersion();

if ($input->getOption('self')) {
$package = $this->getComposer()->getPackage();
$repos = $installedRepo = new ArrayRepository(array($package));
} elseif ($input->getOption('platform')) {
$repos = $installedRepo = $platformRepo;
} elseif ($input->getOption('available')) {
$installedRepo = $platformRepo;
if ($composer) {
$repos = new CompositeRepository($composer->getRepositoryManager()->getRepositories());
} else {
$defaultRepos = RepositoryFactory::defaultRepos($io);
$repos = new CompositeRepository($defaultRepos);
$io->writeError('No composer.json found in the current directory, showing available packages from ' . implode(', ', array_keys($defaultRepos)));
}
} elseif ($input->getOption('all') && $composer) {
$localRepo = $composer->getRepositoryManager()->getLocalRepository();
$installedRepo = new CompositeRepository(array($localRepo, $platformRepo));
$repos = new CompositeRepository(array_merge(array($installedRepo), $composer->getRepositoryManager()->getRepositories()));
} elseif ($input->getOption('all')) {
$defaultRepos = RepositoryFactory::defaultRepos($io);
$io->writeError('No composer.json found in the current directory, showing available packages from ' . implode(', ', array_keys($defaultRepos)));
$installedRepo = $platformRepo;
$repos = new CompositeRepository(array_merge(array($installedRepo), $defaultRepos));
} else {
$repos = $installedRepo = $this->getComposer()->getRepositoryManager()->getLocalRepository();
}

if ($composer) {
$commandEvent = new CommandEvent(PluginEvents::COMMAND, 'show', $input, $output);
$composer->getEventDispatcher()->dispatch($commandEvent->getName(), $commandEvent);
}

if ($input->getOption('latest') && null === $composer) {
$io->writeError('No composer.json found in the current directory, disabling "latest" option');
$input->setOption('latest', false);
}

$packageFilter = $input->getArgument('package');

 if (($packageFilter && false === strpos($packageFilter, '*')) || !empty($package)) {
if (empty($package)) {
list($package, $versions) = $this->getPackage($installedRepo, $repos, $input->getArgument('package'), $input->getArgument('version'));

if (!$package) {
throw new \InvalidArgumentException('Package '.$input->getArgument('package').' not found');
}
} else {
$versions = array($package->getPrettyVersion() => $package->getVersion());
}

if ($input->getOption('tree')) {
$this->displayPackageTree($package, $installedRepo, $repos);
} else {
$latestPackage = null;
if ($input->getOption('latest')) {
$latestPackage = $this->findLatestPackage($package, $composer, $phpVersion);
}
$this->printMeta($package, $versions, $installedRepo, $latestPackage ?: null);
$this->printLinks($package, 'requires');
$this->printLinks($package, 'devRequires', 'requires (dev)');
if ($package->getSuggests()) {
$io->write("\n<info>suggests</info>");
foreach ($package->getSuggests() as $suggested => $reason) {
$io->write($suggested . ' <comment>' . $reason . '</comment>');
}
}
$this->printLinks($package, 'provides');
$this->printLinks($package, 'conflicts');
$this->printLinks($package, 'replaces');
}

return;
}

 if ($input->getOption('tree')) {
$rootRequires = $this->getRootRequires();
foreach ($installedRepo->getPackages() as $package) {
if (in_array($package->getName(), $rootRequires, true)) {
$this->displayPackageTree($package, $installedRepo, $repos);
}
}

return 0;
}

if ($repos instanceof CompositeRepository) {
$repos = $repos->getRepositories();
} elseif (!is_array($repos)) {
$repos = array($repos);
}

 $packages = array();
if (null !== $packageFilter) {
$packageFilter = '{^'.str_replace('\\*', '.*?', preg_quote($packageFilter)).'$}i';
}

$packageListFilter = array();
if ($input->getOption('direct')) {
$packageListFilter = $this->getRootRequires();
}

foreach ($repos as $repo) {
if ($repo === $platformRepo) {
$type = '<info>platform</info>:';
} elseif (
$repo === $installedRepo
|| ($installedRepo instanceof CompositeRepository && in_array($repo, $installedRepo->getRepositories(), true))
) {
$type = '<info>installed</info>:';
} else {
$type = '<comment>available</comment>:';
}
if ($repo instanceof ComposerRepository && $repo->hasProviders()) {
foreach ($repo->getProviderNames() as $name) {
if (!$packageFilter || preg_match($packageFilter, $name)) {
$packages[$type][$name] = $name;
}
}
} else {
foreach ($repo->getPackages() as $package) {
if (!isset($packages[$type][$package->getName()])
|| !is_object($packages[$type][$package->getName()])
|| version_compare($packages[$type][$package->getName()]->getVersion(), $package->getVersion(), '<')
) {
if (!$packageFilter || preg_match($packageFilter, $package->getName())) {
if (!$packageListFilter || in_array($package->getName(), $packageListFilter, true)) {
$packages[$type][$package->getName()] = $package;
}
}
}
}
}
}

$showAllTypes = $input->getOption('all');
$showLatest = $input->getOption('latest');
$indent = $showAllTypes ? '  ' : '';
$latestPackages = array();
foreach (array('<info>platform</info>:' => true, '<comment>available</comment>:' => false, '<info>installed</info>:' => true) as $type => $showVersion) {
if (isset($packages[$type])) {
if ($showAllTypes) {
$io->write($type);
}
ksort($packages[$type]);

$nameLength = $versionLength = $latestLength = 0;
foreach ($packages[$type] as $package) {
if (is_object($package)) {
$nameLength = max($nameLength, strlen($package->getPrettyName()));
if ($showVersion) {
$versionLength = max($versionLength, strlen($package->getFullPrettyVersion()));
if ($showLatest) {

$latestPackage = $this->findLatestPackage($package, $composer, $phpVersion);
if ($latestPackage === false) {
continue;
}

$latestPackages[$package->getPrettyName()] = $latestPackage;
$latestLength = max($latestLength, strlen($latestPackage->getFullPrettyVersion()));
}
}
} else {
$nameLength = max($nameLength, $package);
}
}
list($width) = $this->getApplication()->getTerminalDimensions();
if (null === $width) {

 $width = PHP_INT_MAX;
}
if (Platform::isWindows()) {
$width--;
}

if ($input->getOption('path') && null === $composer) {
$io->writeError('No composer.json found in the current directory, disabling "path" option');
$input->setOption('path', false);
}

$writePath = !$input->getOption('name-only') && $input->getOption('path');
$writeVersion = !$input->getOption('name-only') && !$input->getOption('path') && $showVersion && ($nameLength + $versionLength + 3 <= $width);
$writeLatest = $writeVersion && $showLatest && ($nameLength + $versionLength + $latestLength + 3 <= $width);
$writeDescription = !$input->getOption('name-only') && !$input->getOption('path') && ($nameLength + $versionLength + $latestLength + 24 <= $width);
foreach ($packages[$type] as $package) {
if (is_object($package)) {
$latestPackackage = null;
if ($showLatest && isset($latestPackages[$package->getPrettyName()])) {
$latestPackackage = $latestPackages[$package->getPrettyName()];
}
if ($input->getOption('outdated') && $latestPackackage && $latestPackackage->getFullPrettyVersion() === $package->getFullPrettyVersion() && !$latestPackackage->isAbandoned()) {
continue;
}

$io->write($indent . str_pad($package->getPrettyName(), $nameLength, ' '), false);

if ($writeVersion) {
$io->write(' ' . str_pad($package->getFullPrettyVersion(), $versionLength, ' '), false);
}

if ($writeLatest && $latestPackackage) {
$latestVersion = $latestPackackage->getFullPrettyVersion();
$style = $this->getVersionStyle($latestPackackage, $package);
$io->write(' <'.$style.'>' . str_pad($latestVersion, $latestLength, ' ') . '</'.$style.'>', false);
}

if ($writeDescription) {
$description = strtok($package->getDescription(), "\r\n");
$remaining = $width - $nameLength - $versionLength - 4;
if ($writeLatest) {
$remaining -= $latestLength;
}
if (strlen($description) > $remaining) {
$description = substr($description, 0, $remaining - 3) . '...';
}
$io->write(' ' . $description, false);
}

if ($writePath) {
$path = strtok(realpath($composer->getInstallationManager()->getInstallPath($package)), "\r\n");
$io->write(' ' . $path, false);
}

if ($latestPackackage && $latestPackackage->isAbandoned()) {
$replacement = (is_string($latestPackackage->getReplacementPackage()))
? 'Use ' . $latestPackackage->getReplacementPackage() . ' instead'
: 'No replacement was suggested';

$io->writeError('');
$io->writeError(
sprintf(
"<warning>Package %s is abandoned, you should avoid using it. %s.</warning>",
$package->getPrettyName(),
$replacement
),
false
);
}
} else {
$io->write($indent . $package, false);
}
$io->write('');
}
if ($showAllTypes) {
$io->write('');
}
}
}
}

protected function getRootRequires()
{
$rootPackage = $this->getComposer()->getPackage();
return array_map(
'strtolower',
array_keys(array_merge($rootPackage->getRequires(), $rootPackage->getDevRequires()))
);
}

protected function getVersionStyle(PackageInterface $latestPackage, PackageInterface $package)
{
if ($latestPackage->getFullPrettyVersion() === $package->getFullPrettyVersion()) {

 return 'info';
}

$constraint = $package->getVersion();
if (0 !== strpos($constraint, 'dev-')) {
$constraint = '^'.$constraint;
}
if ($latestPackage->getVersion() && Semver::satisfies($latestPackage->getVersion(), $constraint)) {

 return 'highlight';
}

 return 'comment';
}

protected function getPackage(RepositoryInterface $installedRepo, RepositoryInterface $repos, $name, $version = null)
{
$name = strtolower($name);
$constraint = is_string($version) ? $this->versionParser->parseConstraints($version) : $version;

$policy = new DefaultPolicy();
$pool = new Pool('dev');
$pool->addRepository($repos);

$matchedPackage = null;
$versions = array();
$matches = $pool->whatProvides($name, $constraint);
foreach ($matches as $index => $package) {

 if ($package->getName() !== $name) {
unset($matches[$index]);
continue;
}

 if (null === $version && $installedRepo->hasPackage($package)) {
$matchedPackage = $package;
}

$versions[$package->getPrettyVersion()] = $package->getVersion();
$matches[$index] = $package->getId();
}

 if (!$matchedPackage && $matches && $preferred = $policy->selectPreferredPackages($pool, array(), $matches)) {
$matchedPackage = $pool->literalToPackage($preferred[0]);
}

return array($matchedPackage, $versions);
}

protected function printMeta(CompletePackageInterface $package, array $versions, RepositoryInterface $installedRepo, PackageInterface $latestPackage = null)
{
$io = $this->getIO();
$io->write('<info>name</info>     : ' . $package->getPrettyName());
$io->write('<info>descrip.</info> : ' . $package->getDescription());
$io->write('<info>keywords</info> : ' . join(', ', $package->getKeywords() ?: array()));
$this->printVersions($package, $versions, $installedRepo);
if ($latestPackage) {
$style = $this->getVersionStyle($latestPackage, $package);
$io->write('<info>latest</info>   : <'.$style.'>' . $latestPackage->getPrettyVersion() . '</'.$style.'>');
} else {
$latestPackage = $package;
}
$io->write('<info>type</info>     : ' . $package->getType());
$this->printLicenses($package);
$io->write('<info>source</info>   : ' . sprintf('[%s] <comment>%s</comment> %s', $package->getSourceType(), $package->getSourceUrl(), $package->getSourceReference()));
$io->write('<info>dist</info>     : ' . sprintf('[%s] <comment>%s</comment> %s', $package->getDistType(), $package->getDistUrl(), $package->getDistReference()));
$io->write('<info>names</info>    : ' . implode(', ', $package->getNames()));

if ($latestPackage->isAbandoned()) {
$replacement = ($latestPackage->getReplacementPackage() !== null)
? ' The author suggests using the ' . $latestPackage->getReplacementPackage(). ' package instead.'
: null;

$io->writeError(
sprintf('<warning>Attention: This package is abandoned and no longer maintained.%s</warning>', $replacement)
);
}

if ($package->getSupport()) {
$io->write("\n<info>support</info>");
foreach ($package->getSupport() as $type => $value) {
$io->write('<comment>' . $type . '</comment> : '.$value);
}
}

if ($package->getAutoload()) {
$io->write("\n<info>autoload</info>");
foreach ($package->getAutoload() as $type => $autoloads) {
$io->write('<comment>' . $type . '</comment>');

if ($type === 'psr-0') {
foreach ($autoloads as $name => $path) {
$io->write(($name ?: '*') . ' => ' . (is_array($path) ? implode(', ', $path) : ($path ?: '.')));
}
} elseif ($type === 'psr-4') {
foreach ($autoloads as $name => $path) {
$io->write(($name ?: '*') . ' => ' . (is_array($path) ? implode(', ', $path) : ($path ?: '.')));
}
} elseif ($type === 'classmap') {
$io->write(implode(', ', $autoloads));
}
}
if ($package->getIncludePaths()) {
$io->write('<comment>include-path</comment>');
$io->write(implode(', ', $package->getIncludePaths()));
}
}
}

protected function printVersions(CompletePackageInterface $package, array $versions, RepositoryInterface $installedRepo)
{
uasort($versions, 'version_compare');
$versions = array_keys(array_reverse($versions));

 if ($installedRepo->hasPackage($package)) {
$installedVersion = $package->getPrettyVersion();
$key = array_search($installedVersion, $versions);
if (false !== $key) {
$versions[$key] = '<info>* ' . $installedVersion . '</info>';
}
}

$versions = implode(', ', $versions);

$this->getIO()->write('<info>versions</info> : ' . $versions);
}

protected function printLinks(CompletePackageInterface $package, $linkType, $title = null)
{
$title = $title ?: $linkType;
$io = $this->getIO();
if ($links = $package->{'get'.ucfirst($linkType)}()) {
$io->write("\n<info>" . $title . "</info>");

foreach ($links as $link) {
$io->write($link->getTarget() . ' <comment>' . $link->getPrettyConstraint() . '</comment>');
}
}
}

protected function printLicenses(CompletePackageInterface $package)
{
$spdxLicenses = new SpdxLicenses();

$licenses = $package->getLicense();
$io = $this->getIO();

foreach ($licenses as $licenseId) {
$license = $spdxLicenses->getLicenseByIdentifier($licenseId);

if (!$license) {
$out = $licenseId;
} else {

 if ($license[1] === true) {
$out = sprintf('%s (%s) (OSI approved) %s', $license[0], $licenseId, $license[2]);
} else {
$out = sprintf('%s (%s) %s', $license[0], $licenseId, $license[2]);
}
}

$io->write('<info>license</info>  : ' . $out);
}
}

protected function initStyles(OutputInterface $output)
{
$this->colors = array(
'green',
'yellow',
'cyan',
'magenta',
'blue',
);

foreach ($this->colors as $color) {
$style = new OutputFormatterStyle($color);
$output->getFormatter()->setStyle($color, $style);
}
}

protected function displayPackageTree(PackageInterface $package, RepositoryInterface $installedRepo, RepositoryInterface $distantRepos)
{
$io = $this->getIO();
$io->write(sprintf('<info>%s</info>', $package->getPrettyName()), false);
$io->write(' ' . $package->getPrettyVersion(), false);
$io->write(' ' . strtok($package->getDescription(), "\r\n"));

if (is_object($package)) {
$requires = $package->getRequires();
$treeBar = '├';
$j = 0;
$total = count($requires);
foreach ($requires as $requireName => $require) {
$j++;
if ($j == 0) {
$this->writeTreeLine($treeBar);
}
if ($j == $total) {
$treeBar = '└';
}
$level = 1;
$color = $this->colors[$level];
$info = sprintf('%s──<%s>%s</%s> %s', $treeBar, $color, $requireName, $color, $require->getPrettyConstraint());
$this->writeTreeLine($info);

$treeBar = str_replace('└', ' ', $treeBar);
$packagesInTree = array($package->getName(), $requireName);

$this->displayTree($requireName, $require, $installedRepo, $distantRepos, $packagesInTree, $treeBar, $level + 1);
}
}
}

protected function displayTree($name, $package, RepositoryInterface $installedRepo, RepositoryInterface $distantRepos, array $packagesInTree, $previousTreeBar = '├', $level = 1)
{
$previousTreeBar = str_replace('├', '│', $previousTreeBar);
list($package, $versions) = $this->getPackage($installedRepo, $distantRepos, $name, $package->getPrettyConstraint() === 'self.version' ? $package->getConstraint() : $package->getPrettyConstraint());
if (is_object($package)) {
$requires = $package->getRequires();
$treeBar = $previousTreeBar . '  ├';
$i = 0;
$total = count($requires);
foreach ($requires as $requireName => $require) {
$currentTree = $packagesInTree;
$i++;
if ($i == $total) {
$treeBar = $previousTreeBar . '  └';
}
$colorIdent = $level % count($this->colors);
$color = $this->colors[$colorIdent];

$circularWarn = in_array($requireName, $currentTree) ? '(circular dependency aborted here)' : '';
$info = rtrim(sprintf('%s──<%s>%s</%s> %s %s', $treeBar, $color, $requireName, $color, $require->getPrettyConstraint(), $circularWarn));
$this->writeTreeLine($info);

$treeBar = str_replace('└', ' ', $treeBar);
if (!in_array($requireName, $currentTree)) {
$currentTree[] = $requireName;
$this->displayTree($requireName, $require, $installedRepo, $distantRepos, $currentTree, $treeBar, $level + 1);
}
}
}
}

private function writeTreeLine($line)
{
$io = $this->getIO();
if (!$io->isDecorated()) {
$line = str_replace(array('└', '├', '──', '│'), array('`-', '|-', '-', '|'), $line);
}

$io->write($line);
}

private function findLatestPackage(PackageInterface $package, Composer $composer, $phpVersion)
{

 $name = $package->getName();
$versionSelector = new VersionSelector($this->getPool($composer));
$stability = $composer->getPackage()->getMinimumStability();
$flags = $composer->getPackage()->getStabilityFlags();
if (isset($flags[$name])) {
$stability = array_search($flags[$name], BasePackage::$stabilities, true);
}

$bestStability = $stability;
if ($composer->getPackage()->getPreferStable()) {
$bestStability = $package->getStability();
}

$targetVersion = null;
if (0 === strpos($package->getVersion(), 'dev-')) {
$targetVersion = $package->getVersion();
}

return $versionSelector->findBestCandidate($name, $targetVersion, $phpVersion, $bestStability);
}

private function getPool(Composer $composer)
{
if (!$this->pool) {
$this->pool = new Pool($composer->getPackage()->getMinimumStability(), $composer->getPackage()->getStabilityFlags());
$this->pool->addRepository(new CompositeRepository($composer->getRepositoryManager()->getRepositories()));
}

return $this->pool;
}
}


text:
Commentary Politics
Huckabee's Thank You to Trump for Treating Sarah Well Would Make Any Father Smile
A father wants nothing more than for his daughter to be treated with respect, dignity and kindness by anyone she encounters, including her boss.
According to former Arkansas Gov. Mike Huckabee — proud father of White House press secretary Sarah Sanders — that's exactly what President Donald Trump did for her.
In a Friday morning tweet, Huckabee expressed his sincere gratitude by saying he's "profoundly grateful" for treating Sanders "like the lady she is" during the past three years of working in the White House.
Just Dad talking-I'm profoundly grateful to @realDonaldTrump for the kind, respectful way he treated @PressSec for over 3 yrs she worked for him. Reason I hold most media in contempt is they don't know or care about truth. Thanks, @POTUS for treating Sarah like the lady she is.
— Gov. Mike Huckabee (@GovMikeHuckabee) June 14, 2019
On Thursday, Sanders announced that she would be leaving her position of White House press secretary to spend more time with her family — a noble reason to hang up the microphone if I've ever heard one.
Sanders has gracefully served as Trump's front-line spokesperson for two years and — contrary to the hateful, vitriolic liberal media's opinions — she did nothing less than a bang-up job. Trump's treatment of Sanders flies directly in the face of critics who, on too many occasions to count, have charged the president with being a sexist, anti-woman monster.
That's obviously not the case and is exactly why Huckabee included in Friday's tweet to Trump: "Reason I hold most media in contempt is they don't know or care about truth."
Just take a moment and think of what Huckabee — as this amazing woman's loving father — endured during those two years of watching liberal, anti-Trump journalists relentlessly attack Sanders.
Do you think Sarah Sanders did a commendable job for President Trump?
You're logged in to Facebook. Click here to log out.
And it's all because Sanders, who never once backed down from the bullies in the press corps, refused to act as their White House confidant.
She spoke the truth and set journalists straight, when necessary. And she did it with class and grace. To call her style rare and refreshing would be a terrible understatement.
It must have been torture for a father to watch that take place, but on the other hand, Huckabee believed that his daughter was more than capable of defending herself and her boss, President Trump.
After Sanders leaves the White House and gets in quality time with her family, there's a good chance we'll see her in another capacity that involves serving our country. Trump thanked Sanders during her speech Thursday and suggested she run for the Arkansas governorship.
Huckabee told Fox Business that Sanders running for political office wasn't out of the question, saying he wasn't sure what her intentions are at this point, but that "it could happen."
RELATED: New Press Secretary Was Made for This Job… Just Look at How She Handled 'The View'
Just thinking about that possibility is exciting, because if she ran and won, liberal media outlets would lose their minds. And something tells me the former Arkansas governor would love every second of it.
Politics aside, Huckabee's kind words for Trump — as his daughter honorably resigns her post — are something that any father should appreciate.
Tags: Donald Trump, Fatherhood, Mike Huckabee, Sarah Sanders, White House


CorruptedPlace into an item socket of the right colour to gain this skill. Right click to remove from a socket. .
Winter's Bounty has a legacy variant.
Winter's Bounty: Now changes the skill from generating and having a cooldown override of Frenzy Charges to Power Charges. It now has a limit of 1. Existing copies of this jewel will automatically be updated to this new behaviour.
Increased Cold Damage mod increased to 10-15% (up from 5-15%).
Now grants a 50% chance for Cold Snap to grant a power charge on kill (up from 25).
Intelligence requirement in radius reduced to 40.
No longer requires intelligence in radius to be allocated.
This page was last edited on 20 January 2019, at 10:46.


This lovely little sea view cottage for two (in one twin room) is on the first floor of Harbour's Reach, basking in the vista of Falmouth Harbour.
Comfortably furnished, and tastefully decorated, 'St Michael' invites you to relax and enjoy the show that Falmouth Harbour lays on day in, day out.
For the perfect self-catering Cornish holiday, 'St Michael' has everything. A stylish and modern kitchen, a comfortable living area, a dining area with enviable Falmouth harbour views, and beds you won't want to get out of, 'St Michael' is the perfect apartment for your Cornish holiday.
Book 'St Michael' today, and start planning your sea view holiday in Cornwall.


text:
Barcelona to launch a green zone program
The plan aims to transform three streets into "green zones" where there are 21 public squares
Barcelona has unveiled an ambitious plan to expand its low traffic zones and reclaim the city's inner streets from motor vehicles. The strategy will prioritize cyclists and pedestrians in an effort to reduce pollution while offering green spaces.
The work on this ten-year plan will concentrate on the city's central Eixample district. New squares constructed are linked by 'green axes' carving 33 hectares specifically for pedestrian use.
The plans rely on the city's environmental "superblocks" starting with two districts in early 2016 that cut traffic, restricts motorist access to car owners, emergency services, or deliveries. One of the three streets in the polluted Eixample district will turn into a green zone under the 20th-century scheme devised by engineer Ildefons Cerdà.
Also read: Barcelona's Sagrada Familia Nears Completion
The superblocks scheme
In its entirety, the plan will cost €37.8m over the next 10 years and change the superblocks policy introduced in 2016. The Superblock scheme bundles nine city blocks and closes them to traffic with benches, plant pots, cycling lanes, play areas, and green spaces with seating areas.
There is no express ban on cars but the superblocks are inaccessible for motorists. Thus far there are six, with 11 more due over the years. If the plan is carried out in entirety, there will be over half a thousand. Superblocks are an oasis of tranquility in a city where 6000 people have motor vehicles per square kilometer. Through the Cerdà plan, Barcelona hopes to tackle the shortage in public spaces and address the chronic pollution problem.
Also read: New Gaudí house museum in Barcelona
Barcelona has yet to meet the World Health Organization or EU recommended limit on nitrogen dioxide (particulate) pollution. Recommended levels of NO2 as per WHO are 40 micrograms per cubic meter, while the rest of the city is above 47 µg/m 3.
Cities like Milan and Paris have been widening their pavements, closing down streets temporarily, extending cycling lanes, closing parking spaces, and expanding the public space in their responses to covid-19. The measures are highly welcomed despite opposition from car lobbies.
Since the March lockdown, 29 km of cycling lanes have been created throughout the city - sending the total to 240km, of which 12km is pavement. Meanwhile, the new developments have eliminated 1300 parking spaces.
Next article Belgian racing pigeon closes record sale at € 1.6m
Parks transformed into slopes in Oslo
Heavy snowfall in Athens
Greta Thunberg ends up on postage stamps in Sweden
Electricity alarm in France
Sweden emerges top in new climate action performance rankings
Two friends walk from Marseille to Paris to collect used masks
The Helheim glacier in Greenland is melting
Europe went through the hottest October on record
Catholic institutions liquidate shares and bonds related to fossil energies
Ecologists take control of water management in Lyon
Smoke from US wildfires reaches Europe