text:
	#define CTeamplayRules C_TeamplayRules

#else

	#include "takedamageinfo.h"

#endif

//
// teamplay_gamerules.h
//

#define MAX_TEAMNAME_LENGTH	16
#define MAX_TEAMS			32

#define TEAMPLAY_TEAMLISTLENGTH		MAX_TEAMS*MAX_TEAMNAME_LENGTH

class CTeamplayRules : public CMultiplayRules
{
public:
	DECLARE_CLASS( CTeamplayRules, CMultiplayRules );

#ifdef CLIENT_DLL

#else

	CTeamplayRules();
	virtual ~CTeamplayRules() {};

	virtual void Precache( void );

	virtual bool ClientCommand( const char *pcmd, CBaseEntity *pEdict );
	virtual void ClientSettingsChanged( CBasePlayer *pPlayer );
	virtual bool IsTeamplay( void );
	virtual bool FPlayerCanTakeDamage( CBasePlayer *pPlayer, CBaseEntity *pAttacker );
	virtual int PlayerRelationship( CBaseEntity *pPlayer, CBaseEntity *pTarget );
	virtual bool PlayerCanHearChat( CBasePlayer *pListener, CBasePlayer *pSpeaker );
	virtual const char *GetTeamID( CBaseEntity *pEntity );
	virtual bool ShouldAutoAim( CBasePlayer *pPlayer, edict_t *target );
	virtual int IPointsForKill( CBasePlayer *pAttacker, CBasePlayer *pKilled );
	virtual void InitHUD( CBasePlayer *pl );
	virtual void DeathNotice( CBasePlayer *pVictim, const CTakeDamageInfo &info );
	virtual const char *GetGameDescription( void ) { return "Teamplay"; }  // this is the game name that gets seen in the server browser
	virtual void PlayerKilled( CBasePlayer *pVictim, const CTakeDamageInfo &info );
	virtual void Think ( void );
	virtual int GetTeamIndex( const char *pTeamName );
	virtual const char *GetIndexedTeamName( int teamIndex );
	virtual bool IsValidTeam( const char *pTeamName );
	virtual const char *SetDefaultPlayerTeam( CBasePlayer *pPlayer );
	virtual void ChangePlayerTeam( CBasePlayer *pPlayer, const char *pTeamName, bool bKill, bool bGib );
	virtual void ClientDisconnected( edict_t *pClient );

protected:
	bool m_DisableDeathMessages;

private:
	void RecountTeams( void );
	const char *TeamWithFewestPlayers( void );

	bool m_DisableDeathPenalty;
	bool m_teamLimit;				// This means the server set only some teams as valid
	char m_szTeamList[TEAMPLAY_TEAMLISTLENGTH];

#endif
};

#endif // TEAMPLAY_GAMERULES_H


text:
The Heyman Hustle Comes to CraveOnline!
(New York, New York) — He was known as "The Mad Scientist," based on his ability to build unique and identifiable characters in professional wrestling, but since his departure from World Wrestling Entertainment, Paul Heyman has been Hustlin'!
Heyman, who was named one of the world's top 100 marketers by Advertising Age magazine for his expansion and absurdly-high Q-rating achieved for his Extreme "ECW" promotion, launched "The Heyman Hustle" digital program in the UK last year, and the program shot through the roof. For Larry Productions, Heyman took to the streets of NYC and interviewed everyone from James Lipton to Jesse Ventura, from Ice-T and Coco to Aubrey O'Day, from The Naked Cowboy to Playboy's Holly Madison.
Partnering with Hi-def impresario Mitchell K. Stuart of the Park Avenue firm HQ / Looking For Larry Productions, Heyman took to the streets of NYC and interviewed everyone from James Lipton to Jesse Ventura, from Ice-T and Coco to Aubrey O'Day, from The Naked Cowboy to Playboy's Holly Madison.
Now, The Heyman Hustle comes to CraveOnline, and the opportunities are endless!
"I always hate press releases where everyone talks about how they look forward to the synergy between the two brands, how we're a perfect fit, why this business marriage is taking place," Heyman stated, "CraveOnline is an enormous platform, and their ad sales staff is outrageously successful. The rest of the hype will be have to be in the presentation of the product we deliver to our audience."
To kick things off, the top 5 episodes from season one of the Hustle will be posted on Crave. The controversial episode with former Danity Kane lead singer Aubrey O'Day will kick things off, with brand new exclusive content of Aubrey in Las Vegas.
"We're not looking to reinvent the wheel," stated Stuart, who is the co-creator of the Hustle, "just redefine the digital medium. Why set your goals anywhere but sky high?!?"
CLICK HERE TO SEE THE CONTROVERSIAL EPISODE OF "THE HEYMAN HUSTLE" STARRING AUBREY O'DAY

redpajama_set_name: RedPajamaCommonCrawl


text:
Andrew McMillen
A journalist and author based in Brisbane, Australia.
GQ Australia story: 'Not Another Bitcoin Story: Steemit and Steemfest', March 2018
A Conversation with Maynard James Keenan of A Perfect Circle, March 2018
Announcing my appointment as national music writer at The Australian, from January 2018
The Weekend Australian Magazine story: 'Lockstep With Lockie: Santiago Velasquez and his guide dog', November 2017
Men's Health story: 'Jason Momoa: "There's Too Much Shit I Want To Do"', November 2017
The Weekend Australian Magazine story: 'Mind The Gap: Training Queensland Rail train drivers', November 2017
Backchannel story: 'The Social Network Doling Out Millions in Ephemeral Money: Steemit', October 2017
Good Weekend story: 'Risky Business: How a bad LSD trip taught one Sydney teenager to think twice about experimenting with drugs', September 2017
Bite Magazine story: 'Here To Help: Refugee dentist Dr Hooman Baghaie', September 2017
The Weekend Australian Review story: 'Sight Unseen: Audio description for blind theatregoers', September 2017
FEATURE JOURNALISM
TECH JOURNALISM
All posts tagged software
A feature story for The Weekend Australian Magazine, published in the November 25-26 issue. Excerpt below.
Lockstep With Lockie
This black labrador spends every waking moment by his owner's side. He's not just a faithful companion, but Santiago Velasquez's eyes on the world.
Their day begins soon after 6am with a series of movements so familiar they're like clockwork. After rising from their beds, positioned side-by-side, Santiago Velasquez and his companion greet each other with affection and a leash is clipped to a collar. It's a couple of dozen steps from their bedroom to the front door of the apartment, then down three floors in the lift to a small garden so that one of them can water the grass. "Quick quicks, Lockie," says the young man, using the voice command for toileting. "Quick quicks."
After breakfast, Velasquez — known to all as "Santi" — leads Lockie to the balcony where he brushes the dog in the morning light, black wisps of fur falling to the floor. The guide dog stands docile, wagging his tail and panting happily. "It's a good bonding exercise," says Santi, a handsome 21-year-old with a swimmer's strong build, a crown of black hair and sporty-looking glasses. In the distance is an extraordinary view of the Brisbane city skyline and surrounding hills but Santi cannot see it. Since birth, he has been blind in one eye with only three per cent vision in the other.
It is a Wednesday in mid-October and they have a big day ahead. In an unpredictable, fast-paced world, Santi and Lockie rely on familiarity and routine as much as possible. Theirs is an intimacy of constant contact. "He's very, very attached — that's a massive understatement — because we spend pretty much every moment of our lives together," says Santi, who takes almost an hour to groom his black labrador and then painstakingly shave his own facial hair by feel with an electric razor. "He takes a long time for everything," says Santi's mother Maria, laughing and rolling her eyes in mock exasperation. In truth, she and her husband Cesar are nothing less than patient, having taught their blind son that his only problem is that he cannot see, and that his blindness is no excuse for not doing the same household chores as his sighted brother, 18-year-old Camilo.
Downstairs at 9am, Santi reattaches the leash and repeats his voice command, while Lockie walks in circles and sniffs the lawn. "Quick quicks, buddy," he says, and he means it: they have a bus to catch. Santi slips a fluorescent yellow harness over the dog's head. With this action, Lockie has been trained to recognise that he is now in work mode, and his focus narrows to the singular task of guiding Santi from home to university — and, much later, back again. The dog is now six years old but has been in training since he was a puppy to fulfil this role. Santi never knew him as a puppy: Lockie was three when they first met on a rainy day at the Guide Dogs Queensland head office. Since January 9, 2015 — a date seared into Santi's memory — they have scarcely spent an hour apart.
To read the full story, visit The Australian. Above photo credit: Justine Walpole.
No Comments / Feature Journalism, Published Writing / Andrew McMillen
Like / Tweet
CNET story: 'Ingress: The Friendliest Turf War on Earth', February 2015
A feature story for CNET; excerpt below.
Ingress: The Friendliest Turf War on Earth
We embed in the field and go behind the scenes of Google's augmented reality game, Ingress. Is walking through the streets of hundreds of countries the future of gaming?
Eleven of us gather deep in the enemy heartland on a balmy Sunday evening to partake in Operation: Green Court. Meeting in secret, we are agents of the Enlightened, a faction which seeks to advance society through our actions. The enemy will be unaware of our presence until we begin attacking and capturing a long corridor of their prized portals, flipping them from blue to green while figuratively flipping them the bird. Our movements must be coordinated and efficient, as it won't be long before we attract the attention of the Resistance, the opposing faction which fears change and seeks to crush our idealism and progress.
In actuality, we are 10 adults and one child meeting on a street corner to bond over our smartphones — specifically, an app called Ingress, a free-to-play augmented reality game that has been downloaded over 8 million times and is being played in more than 200 countries.
The massively multiplayer mobile game encourages its players to walk around the real world, using data overlaid atop Google Maps to attack and defend real-world public locations known as "portals". Our common goal for this operation is to turn the suburb green — the colour of the Enlightened, and the colour of the shirt of Aladrin, the 39 year-old agent who arranged this operation via Google+ earlier in the week.
Milton — an inner-city suburb of Brisbane, Australia — is usually coated in blue, thanks to the dedicated efforts of its Resistance population, many of whom work at nearby IT firms. Our own neighbourhood, just across the Brisbane River, is firmly green-held, but on this Sunday night we've set out to ruffle a few blue feathers. Owing to their team colour, Resistance players are commonly referred to as "Smurfs". The Enlightened tend to self-identify as "frogs".
Among the eleven of us is Apocs85, a dedicated level 15 agent who is widely known and respected as the unofficial guardian of Brisbane's West End. The 29-year-old loves his day job of testing video games, and his Ingress statistics show that he has walked 118 kilometres (73 miles) in the last week while defending and rebuilding portals throughout the inner-city.
Niantic's 'success failure'
In-game action is shown on our smartphone screens, which act as "scanners" to reveal the portals located all around us. They're invisible to the naked eye, but with Ingress loaded on our Android or iOS devices, we're able to see portals attached to structures, artwork, historic locations and buildings of cultural significance — train stations, public parks and post offices are three common examples.
The portal locations are user-submitted and manually checked by staff at Niantic Labs, the game's Google-owned developer, to ensure their accuracy and suitability. Globally, more than 3 million such locations have been approved so far, in numbers far greater than expected when the game was first released as a public beta version in November 2012.
"At Google, we call that a 'success failure'," says Niantic Labs founder John Hanke with a chuckle. "It's a failure because it's so successful: lots of people submitted portals, which is great, but now it's more than we can really handle to keep the response time down."
To read the full story, visit CNET.
No Comments / Feature Journalism, Tech Journalism / Andrew McMillen
Podcast: 'Penmanship'
Book: 'Talking Smack: Honest Conversations About Drugs' (2014)
Newsletter: 'Dispatches'
Andrew's first book, Talking Smack: Honest Conversations About Drugs, was published by University of Queensland Press in July 2014.
Andrew's feature journalism has been published in:
The New York Times,
The Weekend Australian Magazine,
Rolling Stone,
Good Weekend,
The Saturday Paper,
The Monthly,
BuzzFeed, and
The Best Australian Science Writing 2016
Andrew also hosts Penmanship, a podcast about Australian writing culture, which features in-depth interviews with Australians who earn a living from working with words.
Love writing, reading or music? Join Dispatches, Andrew's weekly newsletter, by entering your email below:
Column Writing (1)
Feature Journalism (126)
Interviewed by Others (5)
Music Journalism (151)
NYWM 2011 (5)
Published Writing (367)
Talking Smack (2)
Tech Journalism (41)
Browse All?
The Weekend Australian Review story: 'The Hardest Hit: Bliss N Eso and Johann Ofner', May 2017
Good Weekend story: 'Showcase: Tkay Maidza', October 2016
The Weekend Australian Review story: 'In From The Cold: Vivica Genaux', April 2016
Qweekend story: 'Man In Black: Ben Salter', June 2015
Backchannel story: 'The Sleeper Autistic Hero Transforming Video Games: Symmetra and Overwatch', July 2017
IGN Australia story: 'This Vertigo-Inducing VR Game Will Scare The Crap Out Of You', May 2017
The New York Times story: 'How Australia Bungled Its $36 Billion High-Speed Internet Rollout', May 2017
Griffith Review essay: 'Worlds Beyond: Teachable moments in virtual reality', May 2017
The Weekend Australian album reviews, December 2016
The Weekend Australian album review, February 2015: Pearls
The Weekend Australian album review, December 2014: The Gin Club
The Weekend Australian album reviews, November 2014: Jack Ladder, Black Cab, Lia Mice, Bertie Blackman
The Weekend Australian book reviews, December 2016
The Weekend Australian book reviews: Joel Meares and Liam Pieper, May 2015
The Weekend Australian book review: 'The Abyssinian Contortionist' by David Carlin, May 2015
The Weekend Australian book review: 'Something Quite Peculiar' by Steve Kilbey, January 2015


text:
'Escape at Dannemora' Review: Ben Stiller's Prison Drama is Riveting
Patricia Arquette, Benicio del Toro, and Paul Dano are the thriller's odd throuple, but Arquette's performance stuns.
Ben Travers
@BenTTravers
Benicio del Toro in "Escape at Dannemora"
Chris Saunders / Showtime
Ben Stiller and Patricia Arquette were co-stars in David O. Russell's 1996 "Flirting With Disaster." At the time, Stiller's directing career limited to "The Ben Stiller Show" and "Reality Bites;" his now-cult favorite "The Cable Guy" was about to flop. Arquette was a burgeoning star and indie film darling thanks to her work in "True Romance" and "Ed Wood," but she had yet to snag her Oscar, let alone the preceding Golden Globe and Emmy nominations. (In between, there were a few rough years plugging "Stigmata" and "Little Nicky.")
Now the two are reinventing themselves, again. Each transform for the viewer in real time — figuratively for Stiller, quite literally with Arquette — in "Escape at Dannemora," Showtime's seven-part limited series about two inmates breaking out of the Clinton Correctional facility in 2015 and the woman who helped them do it. It's Stiller's first real drama as a director, and he's created a thriller with the cold, blue look and feel of classic prison stories like "The Shawshank Redemption" and "Escape From Alcatraz." Arquette, meanwhile, plays the drama's pivotal assistant, Joyce "Tilly" Mitchell, ditching the soft voice and composed style of recent roles for a brazen upstate accent and 40 pounds gained for the part.
The efforts pay off. Along with stars Paul Dano and Benicio del Toro and writers Brett Johnson and Michael Tolkin, Stiller and Arquette make "Escape at Dannemora" an intense, exciting, and character-elevated miniseries. A focus on human error over institutional failings makes for a distinct and gripping experience.
Introduced first to Tilly, who's already decked out in a black-and-white jumpsuit, "Escape at Dannemora" is told in flashback, but without cutaways to the present (a la "True Detective") and with the insight of multiple perspectives. (The writers used a thorough report issued by the state to nail down the details.) Richard Matt (del Toro) and David Sweat (Dano) are two lifers living in the "Honor Block" of the Clinton Correctional facility, a very old, very cold prison housed in the northern New York village of Dannemora. Matt is well positioned on the inside. He can get whatever he wants through his close connection with a guard, Gene Palmer (David Morse), and he often trades original paintings (of everything from cute pugs to Tony Soprano) for favors with the art-loving officer.
Patricia Arquette in "Escape at Dannemora"
Sweat is Matt's friend, pupil, and a diligent worker. He studies under Matt to create his own original artwork, but he's the supervisor in the inmates' tailoring shop. It's there he strikes up an affair with Tilly, the foreman, who's married to one of the facility's maintenance men, Lyle (played by Eric Lange, in a role far removed from his work on "Narcos"). What drives her to risk her job and her marriage by having sex in the back room of a sweatshop isn't clear at first. The sex is utilitarian and quick, without any obvious romantic ties, but "Escape at Dannemora" slowly and assuredly peels back the layers to expose everyone involved.
While many escape narratives focus on finding and exploiting weaknesses in the prison, this series focuses on exploiting the weaknesses within people. Tilly is the key to getting the whole thing started, and how far she goes, where she draws the line, and what pushes her toward the decisions she made are all keenly explored. The seven episodes, especially the later entries, are also studiously observant of identity; specifically, how a person can assume (or craft) a persona based on the setting. As the old saying goes, prison changes people, but "Dannemora" is smart enough to realize it doesn't change everyone into the same thing.
In turn, Stiller brings a lot of himself to the project. Pulsing with a diegetic soundtrack of classic rock and modern pop (Nick Jonas' "Chains" plays a pivotal role, believe it or not), there's a rebellious, if not outright comedic, tone that runs under the dramatic tension. The director has a bit of fun with Matt's drawings (dropping them in the background of frames for unexpected levity) and Tilly's wardrobe (a shopping montage is particularly boisterous), but there's also a minutes- and miles-long tracking shot to kick off "Chapter 5" that churns with attitude. Not only does it show off the real-life locations that help ground the show, but it's also a compelling presentation of how far the escapees have come — and how close they are to screwing it all up.
Paul Dano in "Escape at Dannemora"
But if Tilly is the key to the plot, it's Arquette's performance that revs the story's engine. Tilly could be written off as a bored housewife whose itch for excitement got out of hand, if not for the obvious glee she shows in taunting authority figures. Count the times the guard on duty rolls his eyes at Tilly when she invites one of the inmates to the back room; they know what she's doing, and she knows they know it, too. Tilly enjoys lying to their faces, knowing they can't do anything about it, and Arquette mines that devilish glint for all its worth.
Imbuing her quietly disliked authority figure with enough bossiness to warrant her co-workers' frustrations, the actor balances well-earned animosity with a persistent victimhood. Her voice reaches a sharp pitch when she's angry, one that's only matched by the same high tone when she's about to start crying. It's as though she can insult someone and invite pity at the same time. She'll yell at Lyle for an ill-timed advance or following too many rules — since he's not bright enough to call out her contradictions — but even when he's trying to protect her from herself, Tilly has a way of making him feel like he's taking her for granted.
Though the contributions of the full cast and crew can't go undervalued, it's Stiller and Arquette who push "Escape at Dannemora" above solid genre and into immersive TV for just about anyone. More than 20 years after their first film together, both artists are still finding new ways to tell stories. They're escaping, too. After all, nobody likes being put in a box.
"Escape at Dannemora" premieres Sunday, November 18 at 10 p.m. on Showtime.
This Article is related to: Television and tagged Ben Stiller, Escape at Dannemora, Reviews, Showtime


text:
Feed Them Silence
Author: Lee Mandelo
e-BookHardcover Format
Lee Mandelo dives into the minds of wolves in Feed Them Silence, a novella of the near future.
What does it mean to "be-in-kind" with a nonhuman animal? Or in...
What does it mean to "be-in-kind" with a nonhuman animal? Or in Dr. Sean Kell-Luddon's case, to be in-kind with one of the last remaining wild wolves? Using a neurological interface to translate her animal subject's perception through her own mind, Sean intends to chase both her scientific curiosity and her secret, lifelong desire to experience the intimacy and freedom of wolfishness. To see the world through animal eyes; smell the forest, thick with olfactory messages; even taste the blood and viscera of a fresh kill. And, above all, to feel the belonging of the pack.
Sean's tireless research gives her a chance to fulfill that dream, but pursuing it has a terrible cost. Her obsession with work endangers her fraying relationship with her wife. Her research methods threaten her mind and body. And the attention of her VC funders could destroy her subject, the beautiful wild wolf whose mental world she's invading.
Also Available by Lee Mandelo:
Summer Sons
At the Publisher's request, this title is being sold without Digital Rights Management Software (DRM) applied.
Tordotcom
"Feed Them Silence is a toxic love story with the world we're killing, delivered in Mandelo's visceral, melancholic prose. You'll want to put it down, but you won't." —Alix E. Harrow, New York Times bestselling author of The Once and Future Witches
"Holy hell, what a visceral and heart-clenching book. Feed Them Silence is a searing portrait of what it means to give up distance for the sake of understanding." —Sarah Gailey, bestselling author of Magic for Liars
"Mandelo delivers a powerful message about environmentalism and the limits of technology that doubles as a page-turning story about a collapsing marriage. Urgent, intimate, immediate, this is sure to wow." —Publishers Weekly, starred review
"Marvelously original and told with sensual perfection, Feed Them Silence is a beautiful, haunting testament to human need—and a lament for everything it destroys." —Andy Davidson, author of The Hollow Kind
"An unsettling exploration of intimacy...Feed Them Silence subtly illuminates the disintegration of boundaries: humans and animals, work and love, research and exploitation." —E.J. Beaton, author of The Councillor
"This novella... will make readers consider their own beliefs regarding ethics, research, technology, and relationships." —Library Journal
This Book is On Tour
Lee Mandelo: Feed Them Silence
Join Lee Mandelo for a discussion of their near-future science fiction novella, Feed Them Silence.


text:
Light-induced N2O production from a non-heme iron-nitrosyl dimer
Yunbo Jiang, Takahiro Hayashi, Hirotoshi Matsumura, Loi H. Do, Amit Majumdar, Stephen J. Lippard, Pierre Moënne-Loccoz
Center for Coastal Margins
Two non-heme iron-nitrosyl species, [Fe2(N-Et-HPTB)(O2CPh)(NO)2](BF4)2 (1a) and [Fe2(N-Et-HPTB)(DMF)2(NO)(OH)](BF4)3 (2a), are characterized by FTIR and resonance Raman spectroscopy. Binding of NO is reversible in both complexes, which are prone to NO photolysis under visible light illumination. Photoproduction of N2O occurs in high yield for 1a but not 2a. Low-temperature FTIR photolysis experiments with 1a in acetonitrile do not reveal any intermediate species, but in THF at room temperature, a new {FeNO}7 species quickly forms under illumination and exhibits a η(NO) vibration indicative of nitroxyl-like character. This metastable species reacts further under illumination to produce N2O. A reaction mechanism is proposed, and implications for NO reduction in flavodiiron proteins are discussed.
https://doi.org/10.1021/ja504343t
Published - Sep 10 2014
10.1021/ja504343t
Dive into the research topics of 'Light-induced N2O production from a non-heme iron-nitrosyl dimer'. Together they form a unique fingerprint.
dinitrosyl iron complex Medicine & Life Sciences 100%
Dimers Engineering & Materials Science 85%
Photolysis Engineering & Materials Science 65%
Lighting Medicine & Life Sciences 62%
Iron Engineering & Materials Science 50%
Illumination Chemical Compounds 50%
Fourier Transform Infrared Spectroscopy Medicine & Life Sciences 42%
Light Medicine & Life Sciences 40%
Jiang, Y., Hayashi, T., Matsumura, H., Do, L. H., Majumdar, A., Lippard, S. J., & Moënne-Loccoz, P. (2014). Light-induced N2O production from a non-heme iron-nitrosyl dimer. Journal of the American Chemical Society, 136(36), 12524-12527. https://doi.org/10.1021/ja504343t
Light-induced N2O production from a non-heme iron-nitrosyl dimer. / Jiang, Yunbo; Hayashi, Takahiro; Matsumura, Hirotoshi et al.
Jiang, Y, Hayashi, T, Matsumura, H, Do, LH, Majumdar, A, Lippard, SJ & Moënne-Loccoz, P 2014, 'Light-induced N2O production from a non-heme iron-nitrosyl dimer', Journal of the American Chemical Society, vol. 136, no. 36, pp. 12524-12527. https://doi.org/10.1021/ja504343t
Jiang Y, Hayashi T, Matsumura H, Do LH, Majumdar A, Lippard SJ et al. Light-induced N2O production from a non-heme iron-nitrosyl dimer. Journal of the American Chemical Society. 2014 Sep 10;136(36):12524-12527. doi: 10.1021/ja504343t
Jiang, Yunbo ; Hayashi, Takahiro ; Matsumura, Hirotoshi et al. / Light-induced N2O production from a non-heme iron-nitrosyl dimer. In: Journal of the American Chemical Society. 2014 ; Vol. 136, No. 36. pp. 12524-12527.
@article{7e7dae88bfe3401d9389060571e7ca50,
title = "Light-induced N2O production from a non-heme iron-nitrosyl dimer",
abstract = "Two non-heme iron-nitrosyl species, [Fe2(N-Et-HPTB)(O2CPh)(NO)2](BF4)2 (1a) and [Fe2(N-Et-HPTB)(DMF)2(NO)(OH)](BF4)3 (2a), are characterized by FTIR and resonance Raman spectroscopy. Binding of NO is reversible in both complexes, which are prone to NO photolysis under visible light illumination. Photoproduction of N2O occurs in high yield for 1a but not 2a. Low-temperature FTIR photolysis experiments with 1a in acetonitrile do not reveal any intermediate species, but in THF at room temperature, a new {FeNO}7 species quickly forms under illumination and exhibits a η(NO) vibration indicative of nitroxyl-like character. This metastable species reacts further under illumination to produce N2O. A reaction mechanism is proposed, and implications for NO reduction in flavodiiron proteins are discussed.",
author = "Yunbo Jiang and Takahiro Hayashi and Hirotoshi Matsumura and Do, {Loi H.} and Amit Majumdar and Lippard, {Stephen J.} and Pierre Mo{\"e}nne-Loccoz",
doi = "10.1021/ja504343t",
T1 - Light-induced N2O production from a non-heme iron-nitrosyl dimer
AU - Jiang, Yunbo
AU - Hayashi, Takahiro
AU - Matsumura, Hirotoshi
AU - Do, Loi H.
AU - Majumdar, Amit
AU - Lippard, Stephen J.
AU - Moënne-Loccoz, Pierre
N2 - Two non-heme iron-nitrosyl species, [Fe2(N-Et-HPTB)(O2CPh)(NO)2](BF4)2 (1a) and [Fe2(N-Et-HPTB)(DMF)2(NO)(OH)](BF4)3 (2a), are characterized by FTIR and resonance Raman spectroscopy. Binding of NO is reversible in both complexes, which are prone to NO photolysis under visible light illumination. Photoproduction of N2O occurs in high yield for 1a but not 2a. Low-temperature FTIR photolysis experiments with 1a in acetonitrile do not reveal any intermediate species, but in THF at room temperature, a new {FeNO}7 species quickly forms under illumination and exhibits a η(NO) vibration indicative of nitroxyl-like character. This metastable species reacts further under illumination to produce N2O. A reaction mechanism is proposed, and implications for NO reduction in flavodiiron proteins are discussed.
AB - Two non-heme iron-nitrosyl species, [Fe2(N-Et-HPTB)(O2CPh)(NO)2](BF4)2 (1a) and [Fe2(N-Et-HPTB)(DMF)2(NO)(OH)](BF4)3 (2a), are characterized by FTIR and resonance Raman spectroscopy. Binding of NO is reversible in both complexes, which are prone to NO photolysis under visible light illumination. Photoproduction of N2O occurs in high yield for 1a but not 2a. Low-temperature FTIR photolysis experiments with 1a in acetonitrile do not reveal any intermediate species, but in THF at room temperature, a new {FeNO}7 species quickly forms under illumination and exhibits a η(NO) vibration indicative of nitroxyl-like character. This metastable species reacts further under illumination to produce N2O. A reaction mechanism is proposed, and implications for NO reduction in flavodiiron proteins are discussed.
U2 - 10.1021/ja504343t
DO - 10.1021/ja504343t


Shop Online Cables24, available for sale on Conversion adaptor Patchcord RJ48 to G703 double coaxial 1.6/5.6 Male.
Available in 1.6/5.6, BT43, 1.0/2.3 and BNC versions (male and female).
If you do not find the connectorization or length you need do not hesitate to consult us, we are manufacturers, we carry out tailor-made jobs.
We remind you that we are manufacturers, if you do not find the connectorization or the length you need, please contact us.


text:
#include <medMainWindow.h>

#include <QtGui>

#include <medBrowserArea.h>
#include <medWorkspaceArea.h>
#include <medHomepageArea.h>

#include <medTabbedViewContainers.h>

#include <medSettingsManager.h>
#include <medSettingsEditor.h>

#include <medStatusBar.h>
#include <medQuickAccessMenu.h>
#include <medSaveModifiedDialog.h>
#include <medEmptyDbWarning.h>

#include <medDatabaseNonPersistentController.h>
#include <medDatabaseController.h>

#include <medJobManager.h>

#include <medWorkspaceFactory.h>
#include <medAbstractWorkspace.h>
#include <medVisualizationWorkspace.h>

#ifdef Q_OS_MAC
# define CONTROL_KEY "Meta"
#else
# define CONTROL_KEY "Ctrl"
#endif

//--------------------------------------------------------------------------
// medMainWindowStyle

class medMainWindowStyle : public QPlastiqueStyle
{
public:
    void drawPrimitive ( PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = 0 ) const
    {
        switch ( element )
        {
        case PE_FrameFocusRect:
            break;
        default:
            QPlastiqueStyle::drawPrimitive ( element, option, painter, widget );
            break;
        }
    }
};

//--------------------------------------------------------------------------
// medMainWindow

class medMainWindowPrivate
{
public:
    //  Interface elements.
    QWidget *currentArea;

    QStackedWidget*           stack;
    medBrowserArea*           browserArea;
    medWorkspaceArea*         workspaceArea;
    medHomepageArea*          homepageArea;
    medSettingsEditor*        settingsEditor;
    QHBoxLayout*              statusBarLayout;
    QWidget*                  rightEndButtons;
    medStatusBar*             statusBar;
    medQuickAccessPushButton* quickAccessButton;
    QToolButton*                quitButton;
    QToolButton*              fullscreenButton;
    QToolButton*              adjustSizeButton;
    QList<QString>            importUuids;
    medQuickAccessMenu * quickAccessWidget;
    bool controlPressed;

    medQuickAccessMenu *shortcutAccessWidget;
    bool shortcutAccessVisible;
    QShortcut * shortcutShortcut;

    QToolButton *screenshotButton;
    QList<QUuid> expectedUuids;
};

medMainWindow::medMainWindow ( QWidget *parent ) : QMainWindow ( parent ), d ( new medMainWindowPrivate )
{
    //  Etch-disabled-text stylesheet property was deprecated.
    //  This is the only way I found to avoid the label's text look like etched when disabled
    //  also not puting the opacity to 0 works very well, except for tooltips
    //  but only tooltips in a QGroupBox, others are fine...
    //  Solution: put a transparent color to the etching palette (Light).

    QPalette p = QApplication::palette();
    p.setColor(QPalette::Disabled, QPalette::Light, QColor(100,100,100,0));
    QApplication::setPalette(p);

    //  To avoid strange behaviours with the homepageshifter
    this->setMinimumHeight ( 600 );
    this->setMinimumWidth ( 800 );

    //  Setting up widgets

    d->settingsEditor = NULL;
    d->currentArea = NULL;

    //  Browser area.
    d->browserArea = new medBrowserArea(this);
    d->browserArea->setObjectName("medBrowserArea");

    //  Workspace area.
    d->workspaceArea = new medWorkspaceArea (this);
    d->workspaceArea->setObjectName("medWorkspaceArea");

    //  Home page
    d->homepageArea = new medHomepageArea( this );
    d->homepageArea->setObjectName("medHomePageArea");

    //  Stack
    d->stack = new QStackedWidget(this);
    d->stack->addWidget(d->homepageArea);
    d->stack->addWidget(d->browserArea);
    d->stack->addWidget(d->workspaceArea);

    //  Setup quick access menu
    d->quickAccessButton = new medQuickAccessPushButton ( this );
    d->quickAccessButton->setFocusPolicy ( Qt::NoFocus );
    d->quickAccessButton->setMinimumHeight(31);
    d->quickAccessButton->setIcon(QIcon(":medInria.ico"));
    d->quickAccessButton->setCursor(Qt::PointingHandCursor);
    d->quickAccessButton->setText(tr("Workspaces access menu"));
    connect(d->quickAccessButton, SIGNAL(clicked()), this, SLOT(toggleQuickAccessVisibility()));

    d->quickAccessWidget = new medQuickAccessMenu(true, this);
    d->quickAccessWidget->setFocusPolicy(Qt::ClickFocus);
    d->quickAccessWidget->hide();
    d->quickAccessWidget->setMinimumWidth(180);
    d->quickAccessWidget->move(QPoint(0, this->height() - d->quickAccessWidget->height() - 30));

    connect(d->quickAccessWidget, SIGNAL(menuHidden()), this, SLOT(hideQuickAccess()));
    connect(d->quickAccessWidget, SIGNAL(homepageSelected()), this, SLOT(switchToHomepageArea()));
    connect(d->quickAccessWidget, SIGNAL(browserSelected()), this, SLOT(switchToBrowserArea()));
    connect(d->quickAccessWidget, SIGNAL(workspaceSelected(QString)), this, SLOT(showWorkspace(QString)));

    d->shortcutAccessWidget = new medQuickAccessMenu( false, this );
    d->shortcutAccessWidget->setFocusPolicy(Qt::ClickFocus);
    d->shortcutAccessWidget->setProperty("pos", QPoint(0, -500));

    connect(d->shortcutAccessWidget, SIGNAL(menuHidden()), this, SLOT(hideShortcutAccess()));
    connect(d->shortcutAccessWidget, SIGNAL(homepageSelected()), this, SLOT(switchToHomepageArea()));
    connect(d->shortcutAccessWidget, SIGNAL(browserSelected()), this, SLOT(switchToBrowserArea()));
    connect(d->shortcutAccessWidget, SIGNAL(workspaceSelected(QString)), this, SLOT(showWorkspace(QString)));

    d->shortcutAccessVisible = false;
    d->controlPressed = false;

    //Add quit button
    QIcon quitIcon;
    quitIcon.addPixmap(QPixmap(":/icons/quit.png"), QIcon::Normal);
    d->quitButton = new QToolButton(this);
    d->quitButton->setIcon(quitIcon);
    d->quitButton->setObjectName("quitButton");
    connect(d->quitButton, SIGNAL( pressed()), this, SLOT (close()));
    d->quitButton->setToolTip(tr("Close medInria"));

    //  Setup Fullscreen Button
    QIcon fullscreenIcon ;
    fullscreenIcon.addPixmap(QPixmap(":icons/fullscreenExpand.png"),QIcon::Normal,QIcon::Off);
    fullscreenIcon.addPixmap(QPixmap(":icons/fullscreenReduce.png"),QIcon::Normal,QIcon::On);

    //  Setting up shortcuts
    //  we use a toolbutton, which has shorcuts,
    //  so we don't need the application shortcut anymore.
    d->fullscreenButton = new QToolButton(this);
    d->fullscreenButton->setIcon(fullscreenIcon);
    d->fullscreenButton->setCheckable(true);
    d->fullscreenButton->setChecked(false);
    d->fullscreenButton->setObjectName("fullScreenButton");
#if defined(Q_WS_MAC)
    d->fullscreenButton->setShortcut(Qt::ControlModifier + Qt::Key_F);
    d->fullscreenButton->setToolTip(tr("Switch FullScreen state (Cmd+f)"));
#else
    d->fullscreenButton->setShortcut(Qt::Key_F11);
    d->fullscreenButton->setToolTip(tr("Switch FullScreen state (F11)"));
#endif
    connect ( d->fullscreenButton, SIGNAL ( toggled(bool) ),
                       this, SLOT ( setFullScreen(bool) ) );

    QIcon cameraIcon;
    cameraIcon.addPixmap(QPixmap(":icons/camera.png"),QIcon::Normal);
    cameraIcon.addPixmap(QPixmap(":icons/camera_grey.png"),QIcon::Disabled);
    d->screenshotButton = new QToolButton(this);
    d->screenshotButton->setIcon(cameraIcon);
    d->screenshotButton->setObjectName("screenshotButton");
    d->screenshotButton->setShortcut(Qt::AltModifier + Qt::Key_S);
    d->screenshotButton->setToolTip(tr("Capture screenshot"));
    QObject::connect(d->screenshotButton, SIGNAL(clicked()), this, SLOT(captureScreenshot()));

    QIcon adjustIcon;
    adjustIcon.addPixmap(QPixmap(":icons/adjust_size.png"),QIcon::Normal);
    d->adjustSizeButton = new QToolButton(this);
    d->adjustSizeButton->setIcon(adjustIcon);
    d->adjustSizeButton->setObjectName("adjustSizeButton");
    d->adjustSizeButton->setShortcut(Qt::AltModifier + Qt::Key_A);
    d->adjustSizeButton->setToolTip(tr("Adjust containers size"));
    QObject::connect(d->adjustSizeButton, SIGNAL(clicked()), this, SLOT(adjustContainersSize()));

    //  QuitMessage and rightEndButtons will switch hidden and shown statuses.
    d->rightEndButtons = new QWidget(this);
    QHBoxLayout * rightEndButtonsLayout = new QHBoxLayout(d->rightEndButtons);
    rightEndButtonsLayout->setContentsMargins ( 5, 0, 5, 0 );
    rightEndButtonsLayout->setSpacing ( 5 );
    rightEndButtonsLayout->addWidget( d->adjustSizeButton );
    rightEndButtonsLayout->addWidget( d->screenshotButton );
    rightEndButtonsLayout->addWidget( d->fullscreenButton );
    rightEndButtonsLayout->addWidget( d->quitButton );

    //  Setting up status bar
    d->statusBarLayout = new QHBoxLayout;
    d->statusBarLayout->setMargin(0);
    d->statusBarLayout->setSpacing(5);
    d->statusBarLayout->addWidget ( d->quickAccessButton );
    d->statusBarLayout->addStretch();
    d->statusBarLayout->addWidget( d->rightEndButtons );

    //  Create a container widget for the status bar
    QWidget * statusBarWidget = new QWidget ( this );
    statusBarWidget->setContentsMargins ( 5, 0, 5, 0 );
    statusBarWidget->setLayout ( d->statusBarLayout );

    //  Setup status bar
    d->statusBar = new medStatusBar(this);
    d->statusBar->setStatusBarLayout(d->statusBarLayout);
    d->statusBar->setSizeGripEnabled(false);
    d->statusBar->setContentsMargins(5, 0, 5, 0);
    d->statusBar->setFixedHeight(31);
    d->statusBar->addPermanentWidget(statusBarWidget, 1);

    this->setStatusBar(d->statusBar);
    connect(d->statusBar, SIGNAL(initializeAvailableSpace()), this,  SLOT(availableSpaceOnStatusBar()));

    //  Init homepage with workspace buttons
    d->homepageArea->initPage();
    connect(d->homepageArea, SIGNAL(showBrowser()), this, SLOT(switchToBrowserArea()));
    connect(d->homepageArea, SIGNAL(showWorkspace(QString)), this, SLOT(showWorkspace(QString)));

    this->setCentralWidget ( d->stack );
    this->setWindowTitle("medInria");
    //  Connect the messageController with the status for notification messages management
    connect(medMessageController::instance(), SIGNAL(addMessage(medMessage*)), d->statusBar, SLOT(addMessage(medMessage*)));
    connect(medMessageController::instance(), SIGNAL(removeMessage(medMessage*)), d->statusBar, SLOT(removeMessage(medMessage*)));

    d->shortcutShortcut = new QShortcut(QKeySequence(tr(CONTROL_KEY "+Space")),
                                                     this,
                                                     SLOT(showShortcutAccess()),
                                                     SLOT(showShortcutAccess()),
                                                     Qt::ApplicationShortcut);
    this->restoreSettings();

    // medQuickAccessMenu loads default workspace to open, so we can switch to it now
    d->quickAccessWidget->switchToCurrentlySelected();
}

medMainWindow::~medMainWindow()
{
    delete d;
    d = NULL;
}

void medMainWindow::mousePressEvent ( QMouseEvent* event )
{
    QWidget::mousePressEvent ( event );
    this->hideQuickAccess();
    this->hideShortcutAccess();
}

void medMainWindow::restoreSettings()
{
    medSettingsManager * mnger = medSettingsManager::instance();

    this->restoreState(mnger->value("medMainWindow", "state").toByteArray());
    this->restoreGeometry(mnger->value("medMainWindow", "geometry").toByteArray());
}

void medMainWindow::saveSettings() {
    if(!this->isFullScreen())
    {
        medSettingsManager * mnger = medSettingsManager::instance();
        mnger->setValue("medMainWindow", "state", this->saveState());
        mnger->setValue("medMainWindow", "geometry", this->saveGeometry());
    }
}

/**
 * If one tries to launch a new instance of medInria, the QtSingleApplication bypass it and receive
 * the command line argument used to launch it.
 * See QtSingleApplication::messageReceived(const QString &message).
 * This method processes a message received by the QtSingleApplication from a new instance.
 */
void medMainWindow::processNewInstanceMessage(const QString& message)
{
    if (message.toLower().startsWith("/open "))
    {
        const QString filename = message.mid(6);
        this->setStartup(medMainWindow::WorkSpace, QStringList() << filename);
    }
}

void medMainWindow::setStartup(const AreaType areaIndex,const QStringList& filenames) {
    switchToArea(areaIndex);
    for (QStringList::const_iterator i= filenames.constBegin();i!=filenames.constEnd();++i)
        open(i->toLocal8Bit().constData());
}

void medMainWindow::switchToArea(const AreaType areaIndex)
{
    switch (areaIndex)
    {
    case medMainWindow::HomePage:
        this->switchToHomepageArea();
        break;

    case medMainWindow::Browser:
        this->switchToBrowserArea();
        break;

    case medMainWindow::WorkSpace:
        this->switchToWorkspaceArea();
        break;
    default:
        this->switchToHomepageArea();
        break;
    }
}

void medMainWindow::open(const medDataIndex &index)
{
    this->showWorkspace(medVisualizationWorkspace::staticIdentifier());
    d->workspaceArea->currentWorkspace()->open(index);
}

void medMainWindow::open(const QString & path)
{
    QEventLoop loop;
    QUuid uuid = medDataManager::instance()->importPath(path, false);
    d->expectedUuids.append(uuid);
    connect(medDataManager::instance(), SIGNAL(dataImported(medDataIndex,QUuid)),
            this, SLOT(open_waitForImportedSignal(medDataIndex,QUuid)));
    while( d->expectedUuids.contains(uuid)) {
        loop.processEvents(QEventLoop::ExcludeUserInputEvents);
    }
}

void medMainWindow::open_waitForImportedSignal(medDataIndex index, QUuid uuid)
{
    if(d->expectedUuids.contains(uuid)) {
        d->expectedUuids.removeAll(uuid);
        disconnect(medDataManager::instance(),SIGNAL(dataImported(medDataIndex,QUuid)),
                   this,SLOT(open_waitForImportedSignal(medDataIndex,QUuid)));
        if (index.isValid()) {
            this->showWorkspace(medVisualizationWorkspace::staticIdentifier());
            d->workspaceArea->currentWorkspace()->open(index);
        }
    }
}

void medMainWindow::resizeEvent ( QResizeEvent* event )
{
    QWidget::resizeEvent ( event );
    d->quickAccessWidget->move(QPoint (0, this->height() - d->quickAccessWidget->height() - 30 ));
    this->hideQuickAccess();
}

//TODO hide it, it is only usefull for immersive romm - RDE
void medMainWindow::setWallScreen (const bool full )
{
    if ( full )
    {
        this->move ( 0, -30 );
        this->resize ( 3528, 1200 );
    }
    else
    {
        this->showNormal();
    }
}

void medMainWindow::setFullScreen (const bool full)
{
    if ( full )
        this->showFullScreen();
    else
        this->showNormal();
}

void medMainWindow::toggleFullScreen()
{
    if ( !this->isFullScreen())
        this->showFullScreen();
    else
        this->showNormal();
}

void medMainWindow::captureScreenshot()
{
    QPixmap screenshot = d->workspaceArea->grabScreenshot();
    QString fileName = QFileDialog::getSaveFileName(this, tr("Save screenshot as"),
                                                    QDir::home().absolutePath(),
                                                    QString(), 0, QFileDialog::HideNameFilterDetails);

    QByteArray format = fileName.right(fileName.lastIndexOf('.')).toUpper().toAscii();
    if ( ! QImageWriter::supportedImageFormats().contains(format) )
        format = "PNG";

    QImage transparentImage = screenshot.toImage();
    QImage outImage(transparentImage.size(), QImage::Format_RGB32);
    outImage.fill(QColor(Qt::black).rgb());

    QPainter painter(&outImage);
    painter.drawImage(0,0,transparentImage);
    outImage.save(fileName, format.constData());
}

void medMainWindow::showFullScreen()
{
    d->fullscreenButton->blockSignals(true);
    d->fullscreenButton->setChecked(true);
    d->fullscreenButton->blockSignals(false);
    QMainWindow::showFullScreen();
    this->setAcceptDrops(true);
}

void medMainWindow::showNormal()
{
    d->fullscreenButton->blockSignals(true);
    d->fullscreenButton->setChecked(false);
    d->fullscreenButton->blockSignals(false);
    QMainWindow::showNormal();
}

void medMainWindow::showMaximized()
{
    d->fullscreenButton->blockSignals(true);
    d->fullscreenButton->setChecked(false);
    d->fullscreenButton->blockSignals(false);
    QMainWindow::showMaximized();
}

QWidget* medMainWindow::currentArea() const
{
    return d->currentArea;
}

void medMainWindow::switchToHomepageArea()
{
    if(d->currentArea == d->homepageArea)
        return;

    d->currentArea = d->homepageArea;

    d->shortcutAccessWidget->updateSelected("Homepage");
    d->quickAccessWidget->updateSelected("Homepage");
    d->quickAccessButton->setText(tr("Workspaces access menu"));
    d->quickAccessButton->setMinimumWidth(170);
    if (d->quickAccessWidget->isVisible())
        this->hideQuickAccess();

    if (d->shortcutAccessVisible)
        this->hideShortcutAccess();

    d->stack->setCurrentWidget(d->homepageArea);
    d->homepageArea->onShowInfo();

    d->screenshotButton->setEnabled(false);
    d->adjustSizeButton->setEnabled(false);

    if (d->homepageArea->getAnimation())
        d->homepageArea->getAnimation()->start();
}

void medMainWindow::switchToBrowserArea()
{
    if(d->currentArea == d->browserArea)
        return;

    d->currentArea = d->browserArea;

    d->shortcutAccessWidget->updateSelected("Browser");
    d->quickAccessWidget->updateSelected("Browser");

    d->quickAccessButton->setText(tr("Workspace: Browser"));
    d->quickAccessButton->setMinimumWidth(170);
    if (d->quickAccessWidget->isVisible())
        this->hideQuickAccess();

    if (d->shortcutAccessVisible)
        this->hideShortcutAccess();

    d->screenshotButton->setEnabled(false);
    d->adjustSizeButton->setEnabled(false);
    d->stack->setCurrentWidget(d->browserArea);
}

void medMainWindow::switchToWorkspaceArea()
{

    if(d->currentArea == d->workspaceArea)
        return;

    d->currentArea = d->workspaceArea;

    this->hideQuickAccess();
    this->hideShortcutAccess();

    d->screenshotButton->setEnabled(true);
    d->adjustSizeButton->setEnabled(true);
    d->stack->setCurrentWidget(d->workspaceArea);

    // Dialog window to recall users if database is empty
    // but only if the warning is enabled in medSettings
    bool showWarning = medSettingsManager::instance()->value(
                "system",
                "showEmptyDbWarning",
                QVariant(true)).toBool();
    if ( showWarning )
    {
        QList<medDataIndex> indexes = medDatabaseNonPersistentController::instance()->availableItems();
        QList<medDataIndex> patients = medDatabaseController::instance()->patients();
        if( indexes.isEmpty() )
            if( patients.isEmpty())
            {
                medEmptyDbWarning* msgBox = new medEmptyDbWarning(this);
                msgBox->exec();
            }
    }
}

void medMainWindow::showWorkspace(QString workspace)
{
    d->quickAccessButton->setMinimumWidth(170);

    this->switchToWorkspaceArea();
    medWorkspaceFactory::Details* details = medWorkspaceFactory::instance()->workspaceDetailsFromId(workspace);

    d->quickAccessButton->setText(tr("Workspace: ") + details->name);
    d->shortcutAccessWidget->updateSelected(workspace);
    d->quickAccessWidget->updateSelected(workspace);
    d->workspaceArea->setCurrentWorkspace(workspace);

    this->hideQuickAccess();
    this->hideShortcutAccess();
}

/**
 * Slot to show bottom left menu
 */
void medMainWindow::toggleQuickAccessVisibility()
{
    // Ensure one can toggle menu appearance/disapperance when it is clicked twice
    if (d->quickAccessWidget->isVisible())
    {
        this->hideQuickAccess();
        return;
    }

    d->quickAccessWidget->reset(false);
    d->quickAccessWidget->setFocus();
    d->quickAccessWidget->setMouseTracking(true);
    d->quickAccessWidget->show();
}

/**
 * Slot to hide bottom left menu
 */
void medMainWindow::hideQuickAccess()
{
    d->quickAccessWidget->hide();
    d->quickAccessWidget->setMouseTracking(false);
}

/**
 * Slot to show alt-tab like menu
 */
void medMainWindow::showShortcutAccess()
{
    if (d->shortcutAccessVisible)
    {
        d->shortcutAccessWidget->updateCurrentlySelectedRight();
        return;
    }

    d->shortcutAccessWidget->reset(true);
    d->shortcutAccessVisible = true;

    QPoint menuPosition = this->mapToGlobal(this->rect().topLeft());
    menuPosition.setX(menuPosition.rx() + (this->rect().width() - d->shortcutAccessWidget->width()) / 2);
    menuPosition.setY(menuPosition.ry() + (this->rect().height() - d->shortcutAccessWidget->height()) / 2);

    d->shortcutAccessWidget->move(menuPosition);
    d->shortcutAccessWidget->show();
    d->shortcutAccessWidget->setFocus();
    d->shortcutAccessWidget->setMouseTracking(true);
    d->shortcutAccessWidget->grabKeyboard();
}

/**
 * Slot to hide alt-tab like menu
 */
void medMainWindow::hideShortcutAccess()
{
    if (!d->shortcutAccessVisible)
        return;

    d->shortcutAccessWidget->releaseKeyboard();
    d->shortcutAccessWidget->setMouseTracking(false);
    d->shortcutAccessVisible = false;
    d->shortcutAccessWidget->setProperty("pos", QPoint ( 0 , -500 ));
    d->shortcutAccessWidget->hide();
    this->activateWindow();
}

int medMainWindow::saveModified( void )
{
    QList<medDataIndex> indexes = medDatabaseNonPersistentController::instance()->availableItems();

    if(indexes.isEmpty())
        return QDialog::Accepted;

    medSaveModifiedDialog *saveDialog = new medSaveModifiedDialog(this);
    saveDialog->show();
    saveDialog->exec();

    return saveDialog->result();
}

void medMainWindow::availableSpaceOnStatusBar()
{
    QPoint workspaceButton_topRight = d->quickAccessButton->mapTo(d->statusBar, d->quickAccessButton->rect().topRight());
    QPoint screenshotButton_topLeft = d->screenshotButton->mapTo(d->statusBar, d->screenshotButton->rect().topLeft());
    //Available space = space between the spacing after workspace button and the spacing before screenshot button
    int space = (screenshotButton_topLeft.x()-d->statusBarLayout->spacing()) -  (workspaceButton_topRight.x()+d->statusBarLayout->spacing());
    d->statusBar->setAvailableSpace(space);
}

void medMainWindow::closeEvent(QCloseEvent *event)
{
    if ( QThreadPool::globalInstance()->activeThreadCount() > 0 )
    {
        int res = QMessageBox::information(this,
                                           tr("System message"),
                                           tr("Running background jobs detected! Quit anyway?"),
                                           tr("Quit"),
                                           tr("WaitForDone"),
                                           tr("Cancel"),
                                           0,
                                           1);

        if(res == 0)
        {
            // send cancel request to all running jobs, then wait for them
            // Note: most Jobs don't have the cancel method implemented, so this will be effectively the same as waitfordone.
            medJobManager::instance()->dispatchGlobalCancelEvent();
            QThreadPool::globalInstance()->waitForDone();
        }
        else
        {
            // just hide the window and wait
            QThreadPool::globalInstance()->waitForDone();
        }
    }
    if(this->saveModified() != QDialog::Accepted)
    {
        event->ignore();
        return;
    }
    this->saveSettings();
    event->accept();
}

bool medMainWindow::event(QEvent * e)
{
    switch(e->type())
    {
    case QEvent::WindowActivate :
    {
        // gained focus
        emit mainWindowActivated();
        break ;
    }

    case QEvent::WindowDeactivate :
    {
        // lost focus
        emit mainWindowDeactivated();
        break ;
    }
    default:
        break;
    } ;
    return QMainWindow::event(e) ;
}

void medMainWindow::adjustContainersSize()
{
    d->workspaceArea->currentWorkspace()->stackedViewContainers()->adjustContainersSize();
}

redpajama_set_name: RedPajamaGithub


text:
Barnwell
Richardson, Patrick, Westbrook & Brickman, LLC
Terry E. Richardson Jr.
Terry E. Richardson Jr. - Barnwell, SC
1730 Jackson StreetP.O.Box 1368Barnwell, SC 29812
Barnwell Burn Injury Cases Lawyer
Terry E. Richardson Jr. is one of the pre-eminent plaintiff attorneys in the southeastern United States.
While many other lawyers operate within a single practice area, Richardson is a consummate litigator who represents individuals, governments and businesses on a wide range of legal matters. His intellectual curiosity has led to much success in his legal career on cases ranging from catastrophic personal injury to products liability, securities...
While many other lawyers operate within a single practice area, Richardson is a consummate litigator who represents individuals, governments and businesses on a wide range of legal matters. His intellectual curiosity has led to much success in his legal career on cases ranging from catastrophic personal injury to products liability, securities fraud and class actions.
From agrarian roots in Barnwell, South Carolina, he built one of the most sophisticated and respected law firms in the region.
As a child, Richardson helped his father grow and harvest crops on the family farm. That hard work and exposure to operating a business, led him to Clemson University, where he graduated with a bachelor's degree in economics and a master's degree in management and operations research.
He was a systems engineer for IBM before being directly commissioned into the United States Army during Vietnam to work on computerized logistical systems in Virginia and Thailand. He returned to civilian life and took a job at Wilbur Smith & Associates in Connecticut, where he assisted governments with revenue financing bonds for airports and toll roads.
Richardson entered the University of South Carolina School of Law in the fall of 1971. He was editor-in-chief of the South Carolina Law Review from 1973-74.
Richardson went to work for Blatt & Fales after law school, becoming just the fifth attorney at the firm. He was blessed to work with famed South Carolina attorney and politician Sol Blatt Sr. for 12 years. In the 1970s, Richardson and the firm pioneered asbestos product liability litigation, and the firm pursued thousands of cases throughout the country.
Following the addition of retired S.C. Supreme Court Chief Justice Julius B. Ness in 1988, the firm changed names to Ness, Motley, Loadholt, Richardson & Poole. Richardson managed the firm during a period of dramatic expansion. By the early 2000s, it had grown to employ 75 attorneys and hundreds of support staff throughout the country. After the firm achieved the landmark Tobacco Master Settlement, four of the six shareholders left to create Richardson, Patrick, Westbrook & Brickman.
Richardson has served his state and the legal profession by holding leadership positions on many endeavors, including chairman of the board of directors of the Nature Conservancy. He has won numerous accolades, including the Compleat Lawyer Award from the University of South Carolina School Law School Alumni Council and Advocate of the Year from the S.C. Appleseed Legal Justice Center. His peers recently named him one of the Top 10 attorneys in South Carolina in the 2016 edition of Super Lawyers.
Richardson has been married to his wife, Gail, for more than 46 years. They still live in the Barnwell home they bought at the beginning of Terry's legal career. The couple enjoys spending time at Edisto Beach with their three children and nine grandchildren. Terry also enjoys ski trips with his friends.
Graniteville Train Crash
On January 6, 2005, two Norfolk Southern trains collided in Graniteville, South Carolina, setting off a chain of events that led to the deaths of nine people and injuries to at least 250 others. Richardson represented Avondale Mills, the company located at the collision site, in its pursuit of compensation from Norfolk Southern for damages to buildings, equipment and its ongoing business activities. The two parties entered into a confidential settlement in 2008 in what media outlets have described as being the largest single tort settlement in South Carolina history. Additionally, Richardson represented three of the people who died and many who were injured. He was class counsel for 5,000 people who were forced to evacuate from their homes.
The Electrocution of Manuel Salazar
In 2003, 24-year-old construction worker Manuel Salazar was standing next to a crane at the Lake Murray dam in South Carolina when the crane made contact with power lines. Salazar was electrocuted, causing the loss of both of his arms and legs. Richardson represented him, arguing successfully that Salazar could bring a personal injury lawsuit rather than just a worker's compensation claim. The case was settled for a confidential amount of money, and is thought to be the largest personal injury settlement in South Carolina history. Salazar has shown such incredible determination and spirit in his recovery that Nike to outfitted him with computerized legs. He is married, has three children and started a business. For more about Manuel's story, click here (https://www.youtube.com/watch?v=VSybUD-5yNM)
Exploding Gas Cans & Other Burn Injuries
Richardson has represented many people who were burned by defective products, including gas cans, deep fryers and gas grills. This included more than 50 people who were hurt or killed by exploding gas cans. One group of clients received more than $60 million from Blitz U.S.A, Inc., and Walmart as a part of a settlement in the Blitz U.S.A., Inc. bankruptcy.
Poisoned Family Land
Richardson represented a family who had owned land for generations in Williston, South Carolina who were forced from their home by pollution from a neighboring refrigerator manufacturer. Heavy metals and other substances poisoned the family's well. The company entered into a confidential settlement with the property owners and the land was eventually cleaned up as part of a Superfund project.
Business & Complex Litigation
Vehicle Defects
Whistleblower & Qui Tam
1974, South Carolina
U.S. District Court, District of South Carolina
U.S. Court of Appeals, Fourth Circuit
University of South Carolina, J.D., 1974
Clemson University, B.A., Economics, 1967; M.S., Business, 1967
Editor-in-Chief, South Carolina Law Review, 1973-1974
Martindale-Hubbell Rated: AV
S.C. Super Lawyers, The Top 10, 2015
American College of Trial Lawyers
South Carolina Bar (Chairman, Negligence, Insurance and Compensation Section, 1976-1977)
University of South Carolina Law School Association (Chairman, 1977–1978)
South Carolina Association for Justice (Member, Executive Committee, 1974–1976)
The American Association for Justice
American Board of Trial Advocates (President, Charleston Chapter, 2001–2002)
South Carolina Commission on Grievance, 1980–1982
Trial Lawyers for Public Justice (S.C. Chairman, 1990–1993)
Civil Justice Reform Act Advisory Group, US District Courts of South Carolina, 1991
South Carolina Chief Justice's Commission on the Profession, 2004–2005
Norfolk Southern Railroad Derailment, Aiken Circuit Court, South Carolina (Co-Chairman, Steering Committee, 2005-2008)
Shoreline Management, Blue Ribbon Committee, 2011-2013
S.C. Board of Trustees of The Nature Conservancy (Chairman, 2012-2013)
S.C. Lawyers Weekly Leadership in Law Honoree, 2014
Best Lawyers in America, Personal Injury Litigation & Railroad Law
About Terry E. Richardson Jr.
Current Employment Position(s)
South Carolina, 1974
U.S. District Court District of South Carolina
U.S. Court of Appeals 4th Circuit
University of South Carolina Law School Association, 1977 - 1978 (Chairman)
South Carolina Association for Justice , 1974 - 1976 (Member, Executive Committee)
American Board of Trial Advocates (President)
South Carolina Commission on Grievance, 1980 - 1982
South Carolina Chief Justice's Commission on the Profession, 2004 - 2005
Trial Lawyers for Public Justice, 1990 - 1993 (S.C. Chairman)
South Carolina Chief Justice's Commission on the Profession, 2004 - 2005
Norfolk Southern Railroad Derailment, Aiken Circuit Court, South Carolina, 2005 - 2008 (Co-Chairman, Steering Committee)
Shoreline Management, Blue Ribbon Committee, 2011 - 2013
S.C. Board of Trustees of The Nature Conservancy, 2012 - 2013 (Chairman)
University of South Carolina School of Law, Columbia, South Carolina, 1974
Law Review: South Carolina Law Review, Editor-in-Chief, 1973 - 1974
Clemson University, 1967
B.A.,Economics
M.S., Business
Ness, Motley, Loadholt, Richardson & Poole, P.A., Barnwell, Shareholder and Managing Partner
http://www.rpwb.com
http://www.mesoinfocenter.com/About/Terry-E-Richardson-Jr.shtml
www.rpwb.com


text:
PHOTO RELEASE--Huntington Ingalls Industries' Newport News Shipbuilding Division Recognized as National Business of the Year for Workforce Development Efforts
NEWPORT NEWS, Va., Sept. 24, 2018 (GLOBE NEWSWIRE) -- Huntington Ingalls Industries' (NYSE: HII) Newport News Shipbuilding division was recognized as the National Business of the Year by the National Association of State Workforce Agencies.
The company was honored for its robust training and development programs and its ongoing partnerships with workforce investment boards, community colleges, local school districts and community groups to recruit, retain and train current and future generations of workers.
"We are honored to be recognized for our workforce development efforts," said Susan Jacobs, Newport News Shipbuilding vice president of human resources and administration. "Building and maintaining a talented workforce is one of our highest priorities, and this award reinforces our commitment to our community and industry."
A photo accompanying this release is available at: https://newsroom.huntingtoningalls.com/file?fid=5ba8fc782cfac274df143dd4
The award also acknowledges the recently announced partnership with the Commonwealth of Virginia to support Newport News' plan to hire as many as 7,000 new shipbuilders over the next five years. This initiative is supported by various state agencies, including the Virginia Employment Commission, which nominated the company for the award, and regional community colleges.
"We're proud that the nation's largest shipbuilding company and the sole builder of U.S. Navy aircraft carriers has its home here in Virginia," said Gov. Ralph Northam. "Newport News Shipbuilding is investing in and employing thousands of Virginia workers and contributing greatly to the economy and life of our commonwealth. I'm delighted to see Newport News Shipbuilding receive this national recognition, and I congratulate the company on this well-deserved accolade."
Newport News received the recognition last week at the National Association of State Workforce Agencies' 82nd annual meeting in Birmingham, Ala.
Huntington Ingalls Industries is America's largest military shipbuilding company and a provider of professional services to partners in government and industry. For more than a century, HII's Newport News and Ingalls shipbuilding divisions in Virginia and Mississippi have built more ships in more ship classes than any other U.S. naval shipbuilder. HII's Technical Solutions division provides a wide range of professional services through its Fleet Support, Integrated Missions Solutions, Nuclear & Environmental, and Oil & Gas groups. Headquartered in Newport News, Virginia, HII employs more than 39,000 people operating both domestically and internationally. For more information, visit:
Duane Bourne
Duane.A.Bourne@HII-co.com


text:
Kaarte van alle de dykpligtige en eenige waalpligtige landen behorende onder het Hoogreemraadschap v....
The engraver Jan Wandelaar (1690-1759) can be credited with producing this beautiful wall map of the Zeeburg and Diemerdijk Water Board. He did this by order of the Hoogh....
The engraver Jan Wandelaar (1690-1759) can be credited with producing this beautiful wall map of the Zeeburg and Diemerdijk Water Board. He did this by order of the Hoogheemraadschap board. Wandelaar worked in Amsterdam, as an artist, engraver, writer and art collector, among other things. His name can be seen on the lower band of the beautifully engraved decoration with the eagle in the centre above.
It is unlikely that Wandelaar took measurements in the field. However, the detail and accuracy of the map show that a good surveyor must unquestionably have been involved. The map therefore offers a wealth of topographical and soil data and is an important source for the history of the area depicted.
The ownership situation of many plots is shown. In the case of wheels or gullies, the years of the relevant dike breaches are indicated. Naturally, the map provides an accurate picture of the many watercourses and water management in the polder area. The top left of the map shows a still empty and drained Diemer Lake. The Diemer or Watergraafsmeer Polder came into being in 1629 after the local lake was drained. During the Saint Peter's Flood in 1651, the sea dike broke and the Watergraafsmeer was flooded. The following year, the polder was reclaimed and parceled out. Subsequently, wealthy Amsterdammers would populate the Watergraafsmeer by building country estates, but this map does not show any evidence of that. At five metres below sea level, the polder is one of the lowest parts of Amsterdam.
At the bottom right of the map is the town of Weesp, surrounded by an almost perfectly circular circle. This circle, marked 'Banscheyding', indicates the jurisdiction of Weesp. Outside this area, the jurisdiction of Weesperkarspel applied. Next to Weesp, the overall image shows the Gemeenlandshuis, the building where the water board was based. At the bottom left, on either side of the column of arms bearing the words 'Stemmende Hollandse en Stigt-Utrechtse Districten', there are depictions of the new sea dyke completed in 1737 and - next to the allegory of Neptune - the former wooden pole dyke. At the foot of the new sea dyke on the map there is always a description of the local conditions of the sea bed; 'Peat soil', 'Seer weke & slegte derry', 'Klygrond', 'Zandgrond' and the like. The number of feet of approximately thirty centimetres also indicates the depth of the seabed near the outer dike embankment.
The detailed map with a scale of approximately 1:6,000 originated from a much smaller map before 1734. Originally, the map had only two sheets, which together with the title strip measured 80 x 103 centimetres. This section of the map appears again and again in later editions, but as a relatively smaller and smaller part of the total map.
At a later stage, the two-sheet map was expanded to a wall map in eight sheets, all of which are of a different size. The total dimensions of this mounted version are 122 x 177 centimetres. Subsequently, the eight-page second edition was changed to a ten-page third edition. At an even later stage, the map was enlarged to the final total size of 122 x 210 centimetres in thirteen printed sheets.
In the meantime, three more part editions were produced, each with their own titles. Two of these part editions followed the eight-sheet edition. Possibly, these map parts were published as separate editions. For this purpose, some existing copper plates were cut up and - in combination with some new copper plates - combined into a new volume. The prints of these new copper plates have some overlap with the remaining parts of the existing copper plates and have their own title. Moreover, it is indicated where the prints of these plates were to be cut up when these new sheets were to be included in a new large map of the entire district. This is clearly visible on the scans of the individually digitised map sheets. For instance, the top centre sheet has its own title, 'De Gebuurte van Overdiemen', just like the top right sheet, 'Stadt en Banne van Muyden aan de west sy van de Vecht'. The ten-page edition was also followed by a self-assembled edition of the top left map sheet, 'Kaart van Diemen, Diemer-Brug en Outersdorp', and the top half of the map sheet below it. When the map was converted into a wall map, these sections were cut off.
In the fourth edition, the ten-page map was finally expanded to a thirteen-page wall map with a series of weapons on both sides of the map image. A lot of cutting and pasting was required to get everything into place. The wall map presented here is an example of the thirteen-page edition known in various states. The Utrecht copy has in the edited, digital version a total of twelve coats of arms of 'Hoogheemraden', 'Dijkgraaf' and 'secretaris', ten coats of arms of 'Stemmende Hollandse en Stigt-Utrechtse districten' and nineteen coats of arms of 'Contribuerende districten'. The left-hand column of coats of arms shows the family coats of arms of the dike reeve, the dike councils and the secretary of the Water Board, as they were in office in 1749. The right-hand column shows the coats of arms of the officials who were added between 1750 and 1755.
Furthermore, there are 23 additional coats of arms of officials from the period 1732-1781, which were intended at the original final assembly to superimpose the coats of arms of ex-officers or to fill an empty coat of arms. The year 1781 is therefore leading for the publication date of this state of the thirteen-page wall map. In the digital montage shown here, however, the additional arms have not been incorporated because their final position on the map is unknown.


The links between HIV transmission and the degree to which people are able to adopt realistic plans to achieve future projects, in other words, hope, have been overlooked in policies to tackle HIV/AIDS.
New research funded by the Economic and Social Research Council (ESRC) argues that hope is a powerful tool in the battle to stop the spread of HIV/AIDS.
Almost 30 years into the AIDS epidemic a medical vaccine for the disease remains elusive. Efforts to control the spread of HIV have been fairly successful in Western countries but have met little success in Africa. For example, life expectancy at birth is now estimated to be 36 years in Botswana, instead of 71 years without AIDS. It is expected to drop towards 30 within the next ten years.
People with hope for the future are less likely to engage in activities in the present that put them at risk of illness in the future. Those without hope for the future, by contrast, place a low value on the future. For example, men who lack hope for the future may be unwilling to surrender immediate pleasure in return for a far-off future benefit by wearing a condom.
Increasing evidence shows that policies to combat AIDS that focus exclusively on individual behaviour are flawed if they dissociate behavioural change from the social, economic and cultural contexts. Security, stability, expectations of seeing the birth of grandchildren and their coming to adulthood, expectations of seeing a small enterprise grow bigger or a tree crop plantation come to maturity – these are all signs and indicators of hope that can have vital impacts on decisions and behaviours.
In contrast HIV/AIDS can destroy hope, resulting in vicious spirals that damage societies and lead to further HIV infections. When life prospects are so poor, people have little incentive to save for the future and to educate children. AIDS has also led to a growing number of orphans in Africa. Without financial, educational and emotional support for the future, a growing number of young people in Africa are less prepared for life and more vulnerable to HIV/AIDS.
"Hope is quite straightforward to measure via questionnaires and surveys can help to identify high risk environments," concludes Professor Barnett.


Legal perspective of new technological developments in one-year master level programme for ambitious professionals.
The programme in English will heavy focus on digital technologies to be launched in September 2019.
The information about enrolment conditions and fees will be available soon.
If you have an interest, please contact us (vigita.vebraite@tf.vu.lt), and we will provide you with all the details.


text:
Ansley Cargill (born January 5, 1982) is a former professional tennis player from the United States.

Cargill won four singles titles and four doubles titles on tournaments of the ITF Circuit. She reached a career-high singles ranking of No. 90 in May 2003.

In 2006, she won the $50k ITF Hammond, defeating top seed Tatiana Poutchek of Belarus, 6–1, 6–3 in the quarterfinals
and No. 4 seed Tatiana Perebiynis of Ukraine, 6–4, 6–4 in the final.
That year, she also won the $25k tournament in Vancouver where she was defending champion.

On the WTA Tour, she reached one singles quarterfinal at Sarasota, FL in 2003. She defeated world No. 13, Patty Schnyder of Switzerland, in the first round, and world No. 31, Tamarine Tanasugarn of Thailand, in the second round before losing to world No. 22, Nathalie Dechy of France.

She also reached one WTA Tour doubles final at Tokyo, the Japan Open in 2003, with Ashley Harkleroad of the United States, they lost to Maria Sharapova and Tamarine Tanasugarn.

Cargill played nine Grand Slam main-draw events and reached the second round of the 2003 Australian Open, defeating Anabel Medina Garrigues before losing to Venus Williams.

Following her graduation from Duke University, Cargill worked for two years in Equity Sales at the Atlanta office of financial brokerage firm Morgan Stanley. Since then, she works as financial analyst for the Boca Raton based management consultancy firm East Management Services.

WTA career finals

Doubles: 1 (1 runner-up)

External links

References

Living people
1982 births
American female tennis players
Duke Blue Devils women's tennis players
Tennis players from Atlanta
Tennis players at the 2003 Pan American Games
Pan American Games bronze medalists for the United States
Pan American Games medalists in tennis
The Westminster Schools alumni
Medalists at the 2003 Pan American Games

redpajama_set_name: RedPajamaWikipedia


VANCOUVER (Reuters) - The Canadian federal agency charged with protecting privacy rights of individuals said on Thursday that it, along with its counterpart in British Columbia, will jointly investigate Facebook Inc <FB.O> and Canadian data firm AggregateIQ, over an ongoing data sharing scandal.
The Office of the Privacy Commissioner of Canada said the probes, which broaden two existing investigations, will look at whether the companies broke federal and provincial personal privacy rules.
Canada's privacy commissioner launched an investigation of Facebook in March after the New York Times and London's Observer newspaper broke news of the use of Facebook data by political consultancy Cambridge Analytica.
Facebook Canada said on Wednesday that more than 600,000 Canadians had their data "improperly shared" with Cambridge Analytica.
British Columbia's privacy commissioner was separately investigating AggregateIQ over whether the Victoria-based company had broken provincial personal privacy rules for its role in the Brexit campaign.
The two agencies will now jointly investigate the companies, as they are subject to both federal and provincial personal privacy laws.


text:
Thái Nguyên  – prowincja Wietnamu, znajdująca się w północnej części kraju, w Regionie Północno-Wschodnim.

Podział administracyjny
W skład prowincji Thái Nguyên wchodzi osiem dystryktów oraz jedno miasto.

 Miasta:
 Thái Nguyên
 Dystrykty:
 Đại Từ
 Định Hóa
 Đồng Hỷ
 Phổ Yên
 Phú Bình
 Phú Lương
 Sông Công
 Võ Nhai

Thái Nguyên


text:
Ready or Not, Libya to hold Elections in Spring
By Mustafa Fetouri for Al-Monitor. Any opinions expressed are those of the author, and do not necessarily reflect the views of Libya Business News.
According to the Libyan Political Agreement signed in Morocco on Dec. 17, 2015, Libya should have held its referendum on its new constitution as well as legislative and presidential elections by now.
By this time, the Government of National Accord (GNA) should have already been replaced by an elected one. The GNA was formed under the leadership of Fayez al-Sarraj specifically to achieve the goals stated in the UN-brokered deal that gave the country an internationally recognized government — but little else.
However, the second anniversary of the agreement has come and gone, and none of these goals were achieved. The GNA is still there after UN envoy Ghassan Salame attempted and failed to get the GNA in Tripoli and its rival government in Tobruk to agree to certain amendments to the agreement's core articles so it would be acceptable to both sides of the political divide.
And after three rounds of talks in Tunis in October 2017, political rivals could not agree on the proposed amendments, thus halting the political progress necessary to move the country forward to national elections.
Libyan strongman Gen. Khalifa Hifter declared in a televised speech Dec. 17, "The Libyan armed forces will never be under the leadership of any unelected body, but will always respond to the Libyan people's orders." Hifter did not say whether he will run in the upcoming elections, but he was clear that the GNA has failed and it should go.
But the GNA stayed, as the UN Security Council also issued a statement on Dec. 17 reiterating the council's support for the GNA as the only legitimate government in the divided country.
Tags: ElectionsfeaturedGovernment of National Accord (GNA)Libyan Political Agreement (LPA)


text:
US Intelligence Says Turkish Warplane Downed in Syrian Waters
By Stephen Lendman
Global Research, July 04, 2012
In-depth Report: SYRIA
On June 29, the Wall Street Journal headlined "Doubts Cast on Turkey's Story of Jet," saying:
US intelligence contradicts Ankara. Turkey's "warplane (was) shot down….by shore-based antiaircraft guns while it was inside Syrian airspace, American officials say, a finding in tune with Syria's account and at odds with Turkey."
Ankara falsified its account. An unnamed senior US defense official also said:
"We see no indication that it was shot down by a surface-to-air missile…."
If a missile struck the plane, Damascus would have ordered it. Antiaircraft fire suggests "a local commander" spotted the plane and acted "on his own initiative," according to US officials and analysts.
The Journal said antiaircraft fire suggests Turkey's plane "was flying low to the ground….(It) likely came closer to the Syrian shoreline than Turkey says, US officials say."
A former unnamed US official with close ties to Turkey said Ankara didn't act by mistake. He stopped short of what he knows was a willful provocation, whatever other reasons were involved.
One official said both countries test each other's air defenses. They're "testing how fast they get picked up and how fast someone responds. It's part of training."
In fact, Turkey's provocation went far beyond a normal exercise. Flying low and fast clearly shows hostile intent.
Journal writers said discrepancies in Ankara's account could strain relations with Washington. Don't bet on it.
Turkey is a valued ally. It's a NATO country. American missile shield installations will be based there. It shares a common border with Syria. It provides safe haven territory for insurgents. It supplies them with weapons. It runs cover for Washington. It participated in its Libya war. It's ready for more against Syria if asked.
On July 3, Turkey's Hurriyet daily headlined "NATO chief backs Turkey," saying:
NATO Secretary-General Fogh Rasmussen condemned Syria's downing a Turkish warplane as "unacceptable." He also "indirectly criticized a Wall Street Journal report which contradicted Turkey's claims that its jet was shot down in international waters."
He told a Brussels news conference that "unnamed sources should not be trusted." His comments came a day after Turkish Prime Minister Recep Tayyip Erdogan accused the Wall Street Journal of "biased journalism."
He wants sources used named.
On July 3, AFP headlined "Assad regrets Syrian downing of Turkish plane," saying:
"I would have wished 100 percent that we had not attacked it."
"The plane was flying in an air corridor used three times in the past by the Israeli air force."
"A country at war always acts like this, this plane was flying at a very low altitude and was shot down by anti-aircraft defences which mistook it for an Israeli plane, which attacked Syria in 2007."
"If this plane had been shot down in international airspace (as maintained by Ankara) we would not have hesitated to apologize."
"We have nothing to gain in attacking a Turkish fighter jet."
Syria acted in self-defense. It forces won't be sent to Turkey's borders, he said, despite Ankara militarizing it days earlier.
"If was communication between our armies," this wouldn't have happened. At the same time, he said, he believes Turkey "has an inclination for war with Syria, but the Turkish people absolutely" don't want it. War would harm both countries. He'll use all his influence to avoid it.
Nonetheless, he accused Turkey of "destroying everything we have built" together. "We are aiming to maintain" good relations. But the Turkish government" undermined the relationship.
He added that soldiers who shot down the plane had no radar. They couldn't identify its country of origin. He sent condolences to the families of two downed pilots. They haven't been found. They're presumed dead.
As for international and opposition element calls for him to step down, he said:
"I would, of course, leave if millions didn't want me. Why would I stay? I've never had any interest in this (presidential) seat."
"I would not stay as a president for even a single day if the salvation of my nation and country depended on my departure."
At the same time, he insists Syrians alone must decide who'll lead them. International law supports him. No nation may interfere in the international affairs of others except in self-defense.
His full interview can be read on Syria's SANA state media.
Syria threatens no one. No nation claims it with a straight face. Externally-generated conflict is lawless. It's naked proxy aggression.
Assad and most Syrians want it ended peacefully. Washington spurns efforts to do it. No end of violence looks likely. Geneva discussions solved nothing. Syria and Iran weren't invited.
Kofi Annan claims he's "ready to support any honest effort to solve the situation." In fact, he and Ban Ki-moon are reliable imperial tools. Their pro-Western marching orders mandate it. They're stalking horses for war.
Geneva's final communique called for establishing a "transitional governing body" with "full executive powers. It could include members of the present government and the opposition and other groups and shall be formed on the basis of mutual consent."
Syrians must "determine the future of the country."
According to Annan:
"The government will have to re-form by discussion, negotiation and by mutual consent, and I will doubt that the Syrians who have fought so hard for their independence….will select people with blood on their hands to lead them."
Assad is more victim than villain. Annan represents Western interests responsible for thousands of Syrian deaths. His hands drip with blood. So do Ban's.
Mutual consent excludes foreign interests. Elements stoking violence have no legitimacy in any future government. Washington and key NATO allies want Geneva language interpreted to mean Assad must go.
They want pro-Western puppet leaders replacing his government. They'll interpret Geneva language as authorization for war. Libya 2.0 looms. It's coming.
Libya today is violent, chaotic, and dysfunctional. War assures replicating similar conditions in Syria. Isolating Iran is key. The road to Tehran runs through Damascus. New sanctions took effect July 1. More on that below.
Iran conducted missile drills. Foreign Foreign Ministry Spokesman Ramin Mehmanparast said they're intended to convey a message of sovereignty and preparedness.
Deputy Commander of Iran's Islamic Revolution Guards Corps (IRGC) Brigadier General Hossein Salami said they serve as a "firm response" to looming threats. They aim "to demonstrate the Iranian nation's political resolve to defend (its) vital values and national interests."
Three days of Great Prophet 7 missile war games began on Monday. They're intended solely for defense. Iran threatens no one. Its neighbors know it. So do hostile Western and Gulf states.
Weapons involved include the Shahab (Meteor) 1, 2, 3, Khalij Fars (Persian Gulf), Tondar (Lightning), Fateh (Victor) and Zelzal (Quake) as well as Qiam (Uprising). Drills involved firing them at mock targets.
On July 3, Mossad-connected DEBKAfile (DF) headlined "US military strength beefed up at Hormuz as nuclear talks with Iran fade," saying:
Obama officials released new details. They claim it's "to fend off any Iranian attempt to endanger international shipping by blocking or planting mines in the Strait of Hormuz."
Washington also said current Istanbul talks are "probably the last." Technical experts are meeting to determine if enough common ground exists for full-fledged discussions. Don't expect it. Washington won't tolerate breakthroughs. Confrontation is policy.
"Tehran has refused to give way on the key issues of the 20-percent grade enrichment of uranium and the closure of its underground nuclear facility at Fordo," said DF.
Tehran, of course, won't yield to unreasonable demands. It's nuclear program is peaceful. No evidence suggests otherwise. Claiming it is cover for regime change.
DF suggested Iran's missile tests showed hostile intent. They "simulat(ed) attacks on 'enemy air bases.' " In fact, they were against mock targets.
DF claims "Tehran had US air bases in the Persian Gulf and Middle East, including facilities used the US Air Force in Israel and Turkey, well within the sights of its missiles. It was stressed that short-, medium- and long-range missiles were being put through their paces."
All nations test weapons. Doing so doesn't reflect hostile intent. Most Western and Israeli tests aren't reported. Tehran's draw rebukes.
US regional land, sea and air forces threaten Iran. Double the number of "fast warships….are capable of instantaneously responding to Iranian moves (to close the) Straits of Hormuz."
Minesweeper numbers were also doubled. Several squadrons of F-15s and F-22 stealth technology aircraft are present. Combat forces are positioned Iraq, Kuwait, and elsewhere in the region.
According to a Defense Department official:
"Don't even think about closing the strait. We'll clear the mines. Don't even think about sending your fast boats out to harass our vessels or commercial shipping. We'll put them on the bottom of the Gulf."
On July 2, Iran's parliament tabled a motion to close the Strait. The measure hasn't passed. Its purpose is to show Tehran's resolve. Closure would be a last resort.
DF said "US, Saudi and other Gulf armies (are) on high alert….on two counts:"
escalated Syrian violence, and
Iran's potential Hormuz threat.
Washington and Gulf state buildups represent "a fraction of the (concentrated) strength" challenging both countries.
Large numbers of US troops are involved. Contingents were flown to two strategic islands: Masirah off Oman's east coast and Socotra, the largest of four archipelago islands by the same name in the Indian Ocean.
Whether saber rattling or something more serious is involved remains to be seen. Washington and Israel are spoiling for war. Expect it to erupt sooner or later. It's coming.
Stephen Lendman lives in Chicago and can be reached at [email protected].
His new book is titled "How Wall Street Fleeces America: Privatized Banking, Government Collusion and Class War"
http://www.claritypress.com/Lendman.html
Visit his blog site at sjlendman.blogspot.com and listen to cutting-edge discussions with distinguished guests on the Progressive Radio News Hour on the Progressive Radio Network Thursdays at 10AM US Central time and Saturdays and Sundays at noon. All programs are archived for easy listening.
http://www.progressiveradionetwork.com/the-progressive-news-hour
Copyright © Stephen Lendman, Global Research, 2012
Articles by: Stephen Lendman
Stephen Lendman lives in Chicago. He can be reached at [email protected] His new book as editor and contributor is titled "Flashpoint in Ukraine: US Drive for Hegemony Risks WW III." http://www.claritypress.com/LendmanIII.html Visit his blog site at sjlendman.blogspot.com. Listen to cutting-edge discussions with distinguished guests on the Progressive Radio News Hour on the Progressive Radio Network. It airs three times weekly: live on Sundays at 1PM Central time plus two prerecorded archived programs.


Orienteering is a very low impact sport. There have been numerous scientific studies conducted, both in Australia and overseas, and some of these resources are provided here.
A full review of scientific studies into the environmental impact of orienteering (IOF/Env/002).
A study into the effect of an orienteering event on breeding wheatear (Oenanthe oenanthe) at Titterstone Clee, Shropshire, UK (IOF/Env/001).
Comparison of the environmental impact of orienteering and other offf-track recreations in the Dartmoor National Park, UK (IOF/Env/004).
Documents prepared by the IOF Environment Commission can be found here.


text:
Q: How to stop a serenity jbehave test and set test out come I'm using serenity core and JBehave. I would like to stop the test and set test outcome as PASS based on some condition if the condition fails test continues.
How could I stop the JBehave test during suite execution and set PASS? And then the suite continues with another test.

A: To the best of my knowledge, JBehave is designed to optionally stop a test upon failure only.  By default it will fail an entire scenario and continue with any other scenarios in the story as applicable.
In situations like this, I believe your only solution is through the steps methods themselves.  Check your "pass" condition in the steps method and then continue the code only if that condition fails.  It's possible your story's scenario definition is not concise enough?  Keep it to a simple Given, When, Then instead of breaking the steps up in too detailed a manner.

redpajama_set_name: RedPajamaStackExchange


Khelo India School Games, which are a part of the Khelo India programme, are being held from 31st January to 8th February, 2018 in New Delhi. Under-17 athletes have been invited to participate across 16 disciplines.
On 31 January 2018 Prime Minister Narendra Modi declared open the inaugural Khelo India School Games at the opening ceremony based on Guru Shishya tradition held at Indira Gandhi Arena.
Khelo India School Games is a part of the revamped National Programme for development of sports, Khelo India. It aims at strengthening the ecosystem by promoting the twin objectives of mass participation and promotion of excellence in sports.
Khelo India School Games (KISG), meaning Play India School Games, held annually beginning from 31 January 2018, are the national level multidisciplinary grassroot games in India for the under-17 years school kids. Every year best 1000 kids will be given an annual scholarship of INR 500,000 for 8 years to prepare them for the international sporting events in 16 disciplines viz Archery, Athletics, Badminton, Basketball, Boxing, Football, Gymnastics, Hockey, Judo, Kabaddi, Kho-Kho, Shooting, Swimming, Volleyball, Weightlifting & Wrestling.
The Training of Trainers (TOT) Programme will be held in December 2018- January 2019 in the first phase. Here total of 160 trainers will be trained in 4 batches of 40 each in December-January period. This TOT Programme will be carried out semi- annually or quarterly to include all the interested teachers/principals/vice-principals/physical education trainers.
To identify the talent at grassroot level, each sports has a dedicated talent hunt committee, who will identify top 2 sportsperson for each sports and they will be given an annual scholarship of INR598,000 for 8 years.
The plan is to select 1,000 under-17 children each year for the next five years and provide scholarships of R5 lakh each to train them to become potential winners at the international level. "While 17 years is a pretty late age to start, gradually we will bring down the age for talent scouting to 14, or may be 12," said Rathore.
Union Sports Minister Rajyavardhan Singh Rathore on Sunday launched the jersey for the second edition of Khelo India, rechristened as Khelo India Youth Games, which will kick-start from January 9-20 in Pune.
Star India has expanded the broadcast coverage for the second edition. The coverage of the upcoming season will include live telecast in five languages (Hindi, Tamil, Telugu, Kannada and English) .


This past weekend I biked 30 minutes or so to an area called Tennoji just south of my neighborhood. Tennoji is known for a pair of temples, Shitennooji and Isshinji. Shitennooji is one of the first Budhist temples founded in Japan. It's very large, open, and quite spread out. I wouldn't exactly call it attractive, but there were some interesting features including a five story pagoda and a turtle pond with tons of turtles. The temple contains a few cemeteries which feel a little out of place surrounded by Osaka's urban offices and apartments. Shitennooji 's garden is supposed to be beautiful, but it is under renovation so I didn't get to see anything. While Shitennooji felt nearly empty, the smaller grounds of Isshinji felt very crowded and the air was heavy with incense. It was a much livelier atmosphere.
I think Teenage Mutant Turtles have forever burned turtles into my brain as one of my favorite animals.
There's an area near Tennoji known as Shin-Sekai. It's filled with street food and pachinko parlors giving it kind of a carnival feeling. It's also home to the Tsuutenkaku tower which used to be Osaka's tallest building. Now it's famous because it's the setting of some Japanese TV drama.
You're supposed to rub his feet for good luck.
Shin-Sekai with Tsuutenkaku tower in the background.
I bought a stuffed Octopus in Shin-Sekai and I named him Taco (Octopus is Tako in Japanese). He sits on my unused TV.
The local shopping arcade started playing "Halloween music" over the past week. "Halloween music" seems to be an infinite loop of the theme from the Halloween movies, The Adams Family Groove, the Ghostbusters Theme, and The Time Warp.


There can be many reasons people find themselves in an animal shelter, prepared to surrender a dog. Life-changing events occur, homes or jobs are lost, unrealistic expectations come home to roost (yes, dogs do poop in real life!), and on it goes. Animal control officers and animal rescues have heard all the stories. This story begins at a busy county animal shelter in southern California.
Hey, this stuff works across species!
This isn't really news. Most of us know that operant conditioning is the primary method of learning, and the best method for teaching across the animal kingdom. But sometimes it's easy to forget that it works just as well on people.


Patrick Swayze: "I'm Going Through Hell"
Swayze's new A&E police drama, "The Beast," meant the actor worked grueling 12-hour workdays with chemotherapy sessions on the weekends.
NEW YORK — Patrick Swayze says his yearlong battle with pancreatic cancer put him "through hell" while he pushed ahead on his new cable TV series.
"I've never been one to run from a challenge," Swayze tells ABC television's Barbara Walters in an exclusive interview.
But the 56-year-old actor owns up to his fear: "Yeah, I'm scared. Yeah, I'm angry. Yeah, I'm (asking), 'Why me?'"
Swayze's new A&E police drama, "The Beast," which premieres next week, meant grueling 12-hour workdays, with chemotherapy sessions on the weekends. He rejected painkilling drugs that would have taken the edge off his performance. In five months, he missed just a day and a half at work.
Most patients with advanced-stage pancreatic cancer face grim odds, and Swayze acknowledges that time may be running out.
"I'd say five years is pretty wishful thinking. Two years seems likely if you're going to believe statistics. I want to last until they find a cure, which means I'd better get a fire under it."