text:
Life Through Photos
That Blogger
Life Changing Moments
A different crisis
Valia August 6, 2015
I travelled from the Netherlands, where I currently live, back to my hometown, a big city in the north of Greece called Thessaloniki, to spend the summer. A few days ago I decided to meet a friend downtown. Since my place is a bit detached from the city center I hadn't been downtown for a long time.
On my way to one of my favorite coffee places, located right in the center's heart, there was a man sitting on the pavement. He had semi-long white hair, brown eyes, dirty clothes, surrounded by his belongings, which were nothing more than a small suitcase and a woolen blanket. He was neither begging for money nor asking for food. He was just sitting there, smiling, but you could clearly see despair in his eyes.
People, who were shopping and passing by, were looking at him uncaringly. Isn't it disappointing that although we live in the same city we don't care for the people who need our help? We stop; we see them and just bypass them. Sometimes, even if we have enough food or money we are not willing to share.
Homeless people in Greece increase rapidly day by day, and for that, the economic crisis is responsible. But for our indifference and the humanitarian crisis that has taken over, not only the city but also the whole country, we should simply blame ourselves. We have turned off our humanity and isolated ourselves in our own digital world, in our own gold cages, which leave no space for kindness and sympathy. But, we don't even dare to think that it could be one of us next time.
After a few hours, the man had fallen asleep, right there on the marbles, holding his blanket tight. The next day he wasn't there. His small suitcase was also missing. Probably the police had kicked him out or there are still people who care.
Take a minute to hit the Like or Share button if you liked this post. Or follow viewpoint to stay updated. Feel free to comment and share your thoughts.
In Sharing Thoughts Tags economic crisis, Greece 2015, Greek crisis, homeless, humanitarian crisis, humanity, sympathy, Thessaloniki, poverty, Viewpoint
Did You Hear About Kenya?
Valia April 6, 2015
I guess we all remember what happened in the satirical magazine Charlie Hebdo in Paris a few months ago where 17 people were shot dead. Just a week ago another deadly attack took place in Kenya when a few gunmen entered the Garissa University College and killed 148 people. It seems like the two attacks have nothing in common, however by looking closer to what happened you'll realize that this is not the case.
Al Qaeda's group based in Yemen claimed responsibility about what happened in Charlie Hebdo mentioning that their goal was to take revenge for insults about the prophet Muhammad. Regarding Kenya's massacre, an Islamist militant group based in Somalia, Al-Shabaab, took responsibility for shooting many Christians, students of Garissa.
So both of the attacks were claimed by terrorist organizations afterwards and moreover both of them were religiously motivated.
However, the main difference regards the days that followed the attacks.
The magazine's deadly attack sparked a series of protests not only in Paris, but also in many parts of the world like Berlin, London, Amsterdam, Manhattan and many others. The well-known "Je suis Charlie" immediately became the protests' slogan. In addition, the world's leaders rushed to pay their respects to the victims' families hours after the attack. All the above were more than enough to transform Hebdo's victims into modern 'heroes'.
But what about Kenya? Despite that many more people were shot dead in Kenya than in Hebdo, protests took place only in Kenya. High placed politicians from around the world didn't refer to the attack. We never heard of a slogan like "Je suis Kenya" and it seems that the victims didn't equal to contemporary heroes.
In contrast to Charlie Hebdo's massacre, media from all around the world neither hustle to visit Kenya and report from there just a few hours after the attack, nor placed the attack on their front page on a daily basis. Is it because stories from Kenya don't sell as much as stories from a European capital? Or just because we think people in Africa die every day so we consider their lives inferior to ours?
While Hebdo's attack will go down in history, we won't even remember what happened in Kenya a year from now. To put it in simple words, what happened in Kenya didn't manage to gain our sympathy.
This is a proof that the world is divided and it's clear that it's 'us' and 'them'. And when it comes to 'us' or 'them', 'us' will always win.
In Sharing Thoughts
Being a soldier
Due to the pretty bad weather yesterday I preferred to stay indoors and watch a movie. After watching a couple of trailers to decide, I remembered that the Fury was on the top of my must see movies list for months - so it was about time I watched it. And I hit the play button...
The movie refers to April 1945 and the last days of the second World War. Don Wardaddy Collier is the commander of a five-men American tank crew named "Fury". The tank's driver was killed during a battle and Norman Ellison joins the crew in order to replace him. But Norman is a young and inexperienced soldier who was called to kill Germans since the very first day. For him, killing was something against his conscience. Due to his beliefs, he was constantly facing harassment by the other crew members.
Later on, Norman understood that it is a matter of survival so either he kills Germans when he has the chance, or Germans will kill him.
There was a clear message in the movie. Even if you aren't born to kill or to fight you have to do it when you are in a battlefield in order to survive. War has its own rules. Rules that can turn off your conscience and transform you to a cynical human-being.
But I couldn't help but wonder, is this something that you get to see only in war times? Because for me the same scenario is being repeated again and again. And I am not only referring to what is happening between Ukraine and Russia, two countries that share the same history as they were both among the major members of the Soviet Union, but I am also talking about today's economic crisis. Have we become soldiers?
The recent economic crisis can be paralleled to a modern battlefield; in which only strong players can survive. As it leaves a lot of victims behind, if you want to succeed you need to put your conscience on silent mode and 'kill your enemies'.
People today have become more cynical than ever. In a society with only a few chances for its members there is no room for humanity or values. But this shouldn't be the case today as we ought to have learned something from our own history. And what did Germany manage to win by fighting in World War II besides a dissolved nation and a bad reputation?
Maybe this is our lesson and maybe we should see the economic crisis as a chance for collaboration instead of a war-time because tomorrow you can be the next victim and in a battlefield no-one will be there to help you.
Apart from that democracy comes with its own values and we should always keep them in mind. And co-operation is a vital part of our democratic values.
Besides that, what is the worth of success if you don't have anyone to share it with?
In Sharing Thoughts Tags Brad Pitt Fury, Don Wardaddy Collier, economic crisis, Fury, modern battlefield, Nazists, Norman Ellison, World War II


text:
Q: PHP isn't receiving my AJAX POST data I'm building a single-page website using AngularJS, and I'm making a contact form. I have looked at a lot of q/a's on this topic, but none of the solutions have worked for me. I have the basic HTML:
<form id="ajax-contact" method="post">

    Name:
    <input type="text" id="name" name="name" required>

    Email:
    <input type="email" id="email" name="email" required>

    Message:
    <textarea id="message" name="message" required></textarea>

    <button class="submit">Send</button>

</form>

My PHP (located in a separate file):
<?php

$name = isset($_POST['sender_name']) ? $_POST['sender_name'] : '';

echo $name;

?>

I didn't include the php file in my main view, but I am checking out the results of the echo by looking at localhost:7070/php/contact.php (Figured if my PHP is just running backend to send an email, I don't need to include it in the view). All I see when I look at the echo is blank space, and if I remove the isset logic, I get an "unidentified index" error for 'sender_name'. What am I doing wrong? Thank you!

A: Try Removing ''
FROM:
var contact_data = {
    'sender_name': $(name).val(),
    'sender_email': $(email).val(),
    'sender_message': $(message).val()
};

TO:
var contact_data = {
    sender_name: $(name).val(),
    sender_email: $(email).val(),
    sender_message: $(message).val()
};

A: Write your code as below:-
var name = $('#name').val();
var email = $('#email').val();
var message = $('#message').val();

var contact_data = {
     'sender_name': name,
     'sender_email': email,
     'sender_message': message
 };

A: jsut change the  method:'POST' to type = 'POST' inside ajax function

A: Use the bellow format, I hope it will help you
var contact_data = {
    'sender_name': $(name).val(),
    'sender_email': $(email).val(),
    'sender_message': $(message).val()
};

console.log(contact_data);

$.ajax({
    method:'POST',
    url:'/php/contact.php',
    data: {contact_data: contact_data},
}).done(function(data) {
    alert('Success!');
    console.log('Submitted succesfully:' + data);
}).fail(function(textStatus, jqXHR) {
    alert('Failed :(');
    console.log(textStatus);
    console.log(jqXHR);
});

A: Try like this if you are getting value after this. Then the function is not sending value by defining a variable
$('button.submit').click(function() {

    alert("Worked");
 //   var contact_data = {
 //       'sender_name': $(name).val(),
        'sender_email': $(email).val(),
 //       'sender_message': $(message).val()
  //  };
        console.log(contact_data);
        $.ajax({
        method:'POST',
        url:'/php/contact.php',
        data: {
        'sender_name': $(name).val(),
        'sender_email': $(email).val(),
        'sender_message': $(message).val()
    }
    }).done(function(data) {

        alert('Success!');
        console.log('Submitted succesfully:' + data);

    }).fail(function(textStatus, jqXHR) {
        alert('Failed :(');
        console.log(textStatus);
        console.log(jqXHR);
    });
});
});

redpajama_set_name: RedPajamaStackExchange


This message is coming later than I'd intended, as I've been rather busy lately!
I'm pleased to say that I placed 9th for Canada at WorldSkills Calgary 2009, and my high score earned me a Medallion of Excellence. What an amazing experience it was! Thanks so much to everyone who has helped me along the way, particularly the fantastic people at Skills/Compétences Canada, Susan Gwin, and Paul Drye from 1-on-1, who helped me prepare for competition.
The opportunities I've had along the way have been incredible. Over the past year, I've received letters and e-mails of support from numerous organizations, software and equipment from sponsors, speaking engagements at various events, and a bit of media attention (which has been pretty neat!).
Last, but certainly not least, I'd like to thank my friends and family who put up with my stressed out self for the past year - I couldn't have done this without their constant support.
Congratulations to Team Canada for bringing back 8 medals and 12 medallions of excellence! To anyone out there who's considering a career in a skilled trade or technology - go for it! It's amazing how far a pile of hard work will get you.


text:
posted at Wednesday, September 4th, 2019 at 8:00 AM | Book Talk, Reviews, Young Adult
I received this book for free from Edelweiss in exchange for an honest review. This does not affect my opinion of the book or the content of my review.
Published by Simon Pulse on August 13, 2019
Source: Edelweiss
Amazon • The Book Depository
Two teens go on a life-changing sailing trip as they deal with the grief of losing their best friend in this heartwrenching, hopeful novel from the author of Something Like Normal and In a Perfect World.
Willa and Taylor were supposed to spend the summer after high school sailing from Ohio to Key West with their best friend, Finley. But Finley died before graduation, leaving them with a twenty-five-foot sailboat, a list of clues leading them to destinations along the way, and a friendship that's hanging by a thread.
Now, Willa and Taylor have two months and two thousand miles to discover how life works without Finley—and to decide if their own friendship is worth saving.
From acclaimed author Trish Doller comes a poignant tale of forgiveness, grief, and the brilliant discoveries we make within ourselves when we least expect it.
Trish Doller is one of my favorite authors who writes books that don't necessarily sound like my thing. Emma Mills and Tessa Dare, for example, right books that sound 100% like books written for me. Doller's tend to sound much more intense and darker, so, while obviously they've been interesting enough for me to pick up, it's always accompanied by a frisson of nerves. Start Here unsurprisingly didn't sound totally like my thing, but on the knowledge of how good all her prior books were, I downloaded a review copy. As expected, the book focuses less on romance and more on the emotional and physical journey, but it's also very excellent.
posted at Friday, August 30th, 2019 at 9:00 AM | Book Talk, Reviews, Young Adult
Always Never Yours by Emily Wibberley, Austin Siegemund-Broka
Published by Penguin on May 22, 2018
Amazon • The Book Depository • Audible
Shouldn't a girl get to star in her own love story?
Seventeen-year-old Megan Harper is about due for her next sweeping romance. It's inevitable—each of her relationships starts with the perfect guy and ends with him falling in love . . . with someone else. But instead of feeling sorry for herself, Megan focuses on pursuing her next fling, directing theater, and fulfilling her dream college's acting requirement in the smallest role possible.
So when she's cast as Juliet (yes, that Juliet) in her high school's production, it's a complete nightmare. Megan's not an actress, and she's used to being upstaged—both in and out of the theater. In fact, with her mom off in Texas and her dad remarried and on to baby #2 with his new wife, Megan worries that, just like her exes, her family is moving on without her.
Then she meets Owen Okita, an aspiring playwright inspired by Rosaline from Shakespeare's R+J. A character who, like Megan, knows a thing or two about short-lived relationships. Megan agrees to help Owen with his play in exchange for help catching the eye of a sexy stagehand/potential new boyfriend. Yet Megan finds herself growing closer to Owen, and wonders if he could be the Romeo she never expected.
In their fresh and funny debut, Emily Wibberly and Austin Siegemund-Broka break down the high school drama to find there's always room for familial love, romantic love, and—most importantly—self-love.
Dahlia told me to read this one even before it came out, but I didn't have a review copy, so it just didn't happen until now. I may not be the most timely in reading recommendations, but it's not that I'm ignoring them! The covers for their next couple books were also strong inducements; this one looked a bit less fluffy, especially paired with the title. Friends, I am happy to report that this book is, in fact, quite fluffy and with points of delicious depth of literary analysis.
posted at Monday, August 26th, 2019 at 8:00 AM | Adult, Book Talk, Reviews
Clean Sweep by Ilona Andrews
Series: Innkeeper Chronicles #1
Published by NYLA on December 2, 2013
Genres: Fantasy, Science Fiction, Romance, Adventure
Amazon • Audible
On the outside, Dina Demille is the epitome of normal. She runs a quaint Victorian Bed and Breakfast in a small Texas town, owns a Shih Tzu named Beast, and is a perfect neighbor, whose biggest problem should be what to serve her guests for breakfast. But Dina is...different: Her broom is a deadly weapon; her Inn is magic and thinks for itself. Meant to be a lodging for otherworldly visitors, the only permanent guest is a retired Galactic aristocrat who can't leave the grounds because she's responsible for the deaths of millions and someone might shoot her on sight. Under the circumstances, "normal" is a bit of a stretch for Dina.
And now, something with wicked claws and deepwater teeth has begun to hunt at night....Feeling responsible for her neighbors, Dina decides to get involved. Before long, she has to juggle dealing with the annoyingly attractive, ex-military, new neighbor, Sean Evans—an alpha-strain werewolf—and the equally arresting cosmic vampire soldier, Arland, while trying to keep her inn and its guests safe. But the enemy she's facing is unlike anything she's ever encountered. It's smart, vicious, and lethal, and putting herself between this creature and her neighbors might just cost her everything.
I've been trying to work my way through Ilona Andrews' backlist, and I picked this one up after finally giving in and DNFing the final The Edge novel. Let's say I went in with somewhat lowered expectations, and I was so freaking happy to find that the humor and fantastic narrative voice I find so intrinsic to Ilona Andrews is present here.
posted at Friday, August 23rd, 2019 at 8:00 AM | Book Talk, Reviews, Young Adult
I received this book for free from NetGalley in exchange for an honest review. This does not affect my opinion of the book or the content of my review.
Aurora Rising by Amie Kaufman, Jay Kristoff
Series: The Aurora Cycle #1
Published by Knopf BFYR on May 7, 2019
Genres: Science Fiction, Adventure
From the internationally bestselling authors of THE ILLUMINAE FILES comes an epic new science fiction adventure.
The year is 2380, and the graduating cadets of Aurora Academy are being assigned their first missions. Star pupil Tyler Jones is ready to recruit the squad of his dreams, but his own boneheaded heroism sees him stuck with the dregs nobody else in the Academy would touch…
A cocky diplomat with a black belt in sarcasm
A sociopath scientist with a fondness for shooting her bunkmates
A smart-ass techwiz with the galaxy's biggest chip on his shoulder
An alien warrior with anger management issues
A tomboy pilot who's totally not into him, in case you were wondering
And Ty's squad isn't even his biggest problem—that'd be Aurora Jie-Lin O'Malley, the girl he's just rescued from interdimensional space. Trapped in cryo-sleep for two centuries, Auri is a girl out of time and out of her depth. But she could be the catalyst that starts a war millions of years in the making, and Tyler's squad of losers, discipline-cases and misfits might just be the last hope for the entire galaxy.
They're not the heroes we deserve. They're just the ones we could find. Nobody panic.
Aurora Rising is excellent fun, and a good start to a new series by dream team Kristoff and Kaufman. If you liked The Illuminae Files, you definitely want to be reading this series as well, which has the same quality of writing, humor, plotting, and world building as the prior series. That said, it's not quiiiiiite as good as Illuminae, but it's pretty great and I have high hopes for the following books in the series.
posted at Wednesday, August 21st, 2019 at 8:00 AM | Young Adult
Series: Market of Monsters #2
Published by HMH BFYR on September 3, 2017
Genres: Fantasy, Urban Fantasy, Paranormal, Horror
Dexter meets Victoria Schwab in this dark and compelling fantasy about a girl who seeks revenge on the boy who betrayed her, a sequel to the critically-acclaimed Not Even Bones.
After escaping her kidnappers and destroying the black market where she was held captive, all Nita wants is to find a way to live her life without looking over her shoulder. But with a video of her ability to self-heal all over the dark web, Nita knows she's still a prime target on the black market. There's only one way to keep herself safe. Nita must make herself so feared that no one would ever dare come after her again. And the best way to start building her reputation? Take her revenge on Fabricio, the boy who sold Nita to her kidnappers. But killing Fabricio is harder than Nita thought it would be, even with Kovit by her side. Now caught in a game of kill or be killed, Nita will do whatever it takes to win.
Not Even Bones was a surprise hit with me last year, gruesome and disgusting and 100% unputdownable. Much as I enjoyed it, I wasn't sure how the sequel would hold up or even if I'd still enjoy it on reread. Answer: yes, I would enjoy it again on reread, because I very much did. Only Ashes Remain delivers exactly what was needed from a sequel to Not Even Bones. The stakes are higher, the morality is blacker, and the pacing is still fast as hell.

redpajama_set_name: RedPajamaCommonCrawl


This Sage Chicken Breakfast Patty Recipe is healthy, delicious and a great addition to any breakfast!
Combine all the ingredients in bowl and mix.
Shape mixture into individual patties.
Heat a large skillet with coconut oil over medium-high heat.
Add chicken patties and cook for approximately 6-8 minutes on each side.


A 42-year-old man from Bulgaria died in hospital on Thursday, five days after he was struck by a vehicle in Limassol as he was trying to cross the road in the evening.
Authorities have released the name of the victim, saying Bulgarian national Μitkov Ognyan succumbed to his injuries while being treated for multiple injuries at Limassol General Hospital.
On the evening of August 25, just before 9pm, Ognyan attempted to cross Pafou Street in an area near downtown Limassol, when an oncoming vehicle struck him. The pedestrian suffered head trauma and internal bleeding as well as multiple bone fractures and cuts around the body.
The car was driven by a 54-year-old woman, who was arrested later on a police warrant and detained during the course of the investigation. Her car also struck another vehicle at a red light, driven by a 25-year-old male who was reportedly not injured.
Doctors who were treating Ognyan in the Intensive Care Unit had described his condition as extremely serious.


View Mark 16 in the note window.
16:4 And when they a looked, they saw that the stone was rolled away: for it was very great.
(a) When they cast their eyes toward the sepulchre.
16:5 And entering into the b sepulchre, they saw a young man sitting on the right side, clothed in a long white garment; and they were affrighted.
(b) Into the cave out of which the sepulchre was cut.
16:9 1 Now when [Jesus] was risen early the first [day] of the week, he appeared first to Mary Magdalene, out of whom he had cast seven devils.
16:12 2 After that he appeared in another form unto two of them, as they walked, and went into the country.
(2) Christ appears to two other disciples and at length to the eleven.
16:14 c Afterward he appeared unto the eleven as they sat at meat, and upbraided them with their unbelief and hardness of heart, because they believed not them which had seen him after he was risen.
(c) The evangelist did not consider the chronological sequence of events, but rather what took place, which he divided into three parts: The first shows how he appeared to the women, the second to his disciples, the third to his apostles, and therefore he says "finally".
16:15 3 And he said unto them, Go ye into all the world, and preach the gospel to d every creature.
(3) The apostles are appointed, and their office is limited to them, which is to preach that which they heard from him, and to minister the sacraments which Christ has instituted, having in addition to this the power to do miracles.
(d) Not to the Jews only, nor in Judea only, but to all men and everywhere: and so must all the apostles do.
(e) Strange tongues, ones which they did not know before.
16:19 4 So then after the Lord had spoken unto them, he was received up into heaven, and sat on the right hand of God.
(4) Christ, having accomplished his office on earth, ascends into heaven, from where (the doctrine of his apostles being confirmed with signs) he will govern his Church, until the world's end.
16:20 And they went forth, and preached every where, the Lord working with [them], and confirming f the word with signs following. Amen.
(f) That is, the doctrine: therefore doctrine must go before and signs must follow after.


text:
Q: Incorrect Image dimension using System.Drawing.Image I am getting incorrect image dimension using the Syste.Drawing.Image
Code -
using(var fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read))
using (Image image = Image.FromStream(fileStream,false,false))
{
    var width = image.Width;
    var height = image.Height;
}

This is my image

The properties shows 2432x3648 but in code i am getting 3648x2432.


text:
Frenchman Cilins gets two years
Frenchman Cilins gets two years in U.S. prison for role in Guinea mine scandal
A former adviser to mining giant BSG Resources was sentenced in New York federal court on Friday to two years in prison for obstructing a criminal probe in connection with a bribery investigation in Guinea.
Frederic Cilins, a French national, pleaded guilty in March to one count of obstruction and admitted attempting to bribe Mamadie Toure, a widow of former Guinea President Lansana Conte, so she would leave the United States to avoid questioning by federal authorities.
Cilins was charged as part of a U.S. probe into potentially illegal payments made to Guinean officials to secure rights to half of one of the world's largest untapped iron ore deposits for BSG Resources (BSGR), the mining arm of Israeli billionaire Beny Steinmetz's conglomerate.
BSGR has denied any wrongdoing.
The investigation eventually prompted Guinean officials to strip the concessions from BSGR and its partner, Brazilian iron ore mining company Vale SA, after a government-appointed committee accused BSGR of obtaining them through corrupt means.
BSGR has accused officials of improperly trying to wrest away its rights to the northern half of the Simandou mine. The company is seeking arbitration at the International Centre for Settlement of Investment Disputes.
Developing Simandou would offer an enormous boost to the Guinean economy, but the project has suffered delays because of disputes over the mining rights.
Last month, Guinea's national assembly ratified an investment framework agreement with global miner Rio Tinto, its Chinese partner Chinalco and International Finance Corporation to raise nearly $20 billion to revive the project. First production from Rio and Chinalco's southern half of Simandou, however, is at least four years away.
The government is also planning to open a new auction to grant the rights stripped from BSGR and Vale for the northern part of the deposit. Guinean officials have said Vale did nothing wrong and encouraged the company to bid again.
At Friday's hearing, Cilins apologized to U.S. District Judge William Pauley for his actions and to his family for causing them pain.
Pauley said Cilins' crime "strikes at the very foundation of the sound administration of justice," but declined to impose a sentence of more than three years, as prosecutors had requested.
Cilins, 51, was accused of offering to pay for Toure's flight to leave the United States to avoid answering federal investigators' questions. Unbeknownst to Cilins, Toure was working as an informant for the U.S. government.
In a taped phone conversation, Cilins told Toure: "That has to be destroyed very urgently," referring to documents tied to the alleged payments, prosecutors said.
The case is U.S. v. Cilins, U.S. District Court for the Southern District of New York, No. 13-315.
Joseph Ax
Gunna Dickson
Rio Tinto keeps out of North Simandou Rio Tinto says will hang back from iron tender First...
Frederic Cilins: 3-Year Prison Term A Frenchman with ties to billionaire Beny Steinmetz and his...
Author: Tierno Siradiou Bah
Founder and publisher of webAfriqa, the African content portal, comprising: webAFriqa.net, webFuuta.net, webPulaaku,net, webMande.net, webCote.net, webForet.net, webGuinee.net, WikiGuinee.net, Campboiro.org, AfriXML.net, and webAmeriqa.com.	View all posts by Tierno Siradiou Bah
Author Tierno Siradiou BahPosted on July 26, 2014 August 29, 2014 Categories Apha Condé, Economie, Etat, France, Guinée, Justice, Mines, SociétéTags beny steinmetz, bsgr, business, corruption, finances, gouvernement, simandou, usa
Previous Previous post: Frederic Cilins: 3-Year Prison Term
Next Next post: Magnifique ! Rouguy Diallo
How to Create a Reddit Clone Using React and Firebase July 19, 2017
React is an awesome JavaScript library for building user interfaces. Since the publishing of Create React App, it has become very easy to scaffold a barebones React application. In this article, we will be using Firebase along with Create React App to build an app which will function similar to Reddit. It will allow the […]
How to Use AMP with WordPress July 19, 2017
To learn more about developing for mobile and other device sizes, take a look at the SitePoint Premium course Responsive Tips and Tricks Google's Accelerated Mobile Pages (AMP) project has been launched on 24 February 2016. With this launch, thousands of developers became active participants in the project. Countless websites now have AMP versions of […]
The Software Developer's Guide to Salary Negotiation July 19, 2017
The following is an excerpt from The Complete Software Developer's Career Guide by John Sonmez. To get the entire book delivered to your inbox, go here. This post may contain some of the most important career advice you'll ever receive --- no, really. Using this information, you may be able to earn yourself hundreds of […]
Cerno Aliyyu Buuɓa Ndiyan, 1847-1927
Président brouillon et pion July 12, 2017
Abdullahi : destin et ascendance d'un Taal July 10, 2017
Notes sur la Civilisation Fulɓe : racines et ramifications July 6, 2017
Pascal Tolno : enseignant, écrivain et politicien July 2, 2017
Culpabilisation désuète et blâme démagogique June 26, 2017
Issue 298 July 13, 2017
Issue 298 - July, 13th 2017
Issue 297 July 6, 2017
Issue 297 - July, 6th 2017
Issue 296 June 29, 2017
Issue 296 - June, 29th 2017


Work begins as a new engineer comes in! Welcome metacollin!
Kickin' it with KiCad and ballin' with metacollin! Work begins as a new engineer comes in!
The road to layouts and manufacturing has taken some winding turns, tested the team's resolve, and reminded us all of the gloomy state of affairs for hardware openness in the industry.
Nevertheless, the Neo900 project has remained uncompromising in its agenda to provide a completely open and transparent stack for all its developers and users. Ultimately, this stance has caused us to take pause when dealing with mainstream layout engineers and foundries who would have Neo900 conform to their interests. This has ultimately led the team to turn to Freenode for what it was intended for -- open source collaboration -- and utlimately discover a new team member.
We welcome metacollin to the core team, an experienced electronic design engineer, native KiCad expert and active contributor to the KiCad project.
metacollin's invaluable addition to the team not only makes v2 of the Neo900 prototype more of a reality, but provides us the necessary KiCad support when needed.
As metacollin settles in to his role of layout engineering, and managing the production and assembly of the first run of the proto_v2 boards, we'll have more technical updates to share.
The current expectation for v2 prototype layout completion is 5 weeks.
The whole Neo900 team thanks the community graciously for their much needed patience as we continue to build and bring this project closer to your palm.
« Is it time for privacy yet?


The long-awaited trial of right-wing extremist Anders Behring Breivik, who massacred 77 people in twin attacks in Norway last July, opens on Monday with proceedings set to focus on whether or not he is sane.
The trial will open amid tight security and massive media attention at the Oslo District Court at 9am (0700 GMT), with the first day's proceedings expected to focus mainly on a run-through of the charges and technicalities of the trial as well as on Breivik's plea.
The main issue of contention during the 10-week trial will revolve around whether he is criminally sane and accountable for his actions, which will determine if he is to be sentenced to prison or a closed psychiatric ward.
On July 22nd, Breivik killed eight people when he set off a bomb in a van parked at the foot of government buildings in Oslo housing the offices of Labour prime minister Jens Stoltenberg, who was not present at the time.
Breivik, 33, has been charged with "acts of terror" and faces either 21 years in prison -- a sentence that could thereafter be extended indefinitely if he is still considered a threat to society -- or closed psychiatric care, possibly for life.
The confessed killer wants to be found sane and accountable for his actions, so that his anti-Islam ideology, as presented in the 1,500-page manifesto he published online just before the attacks, will be taken seriously and not considered the ravings of a lunatic.
Vibeke Hein Bære, another defence lawyer, told TV2 Nyhetskanalen Sunday her client was preparing for his testimony, which is set to begin Tuesday, and was jotting down notes, but insisted he would not be allowed to make an ideological speech to the court.
The court has nonetheless banned television broadcasts of his testimony.
The five judges will have to consider the two contradictory psychiatric evaluations presented to the court, and determine whether he is sane and accountable when they hand down their verdict sometime in July.
The massacre shocked normally tranquil Norway, home of the Nobel Peace Prize, sparking emotional displays of national unity and a deep reflection on the delicate balance between openness and security.
"On July 22nd, it was our democracy that was attacked," Prime Minister Jens Stoltenberg told news agency NTB recently, stressing: "It is therefore more important than ever to show that our democracy and rule of law work."
The size of the trial is unprecedented in the Scandinavian country.
The proceedings in the specially-adapted Oslo District Court will be broadcast live to 17 local courthouses around the country to accommodate more than 770 survivors and families of victims figuring as plaintiffs.
Police have cordoned off numerous streets around the courthouse, which has been beset by media organisations from around the world, with some 800 reporters from around 210 media organisations set to follow the case.


text:
Q: ConTeXt: Eliminate topspace and bottomspace Background
Looking to put the page number flush to the bottom of the page using ConTeXt. The key lines in the Minimum Working Example (MWE) below are:
\setuplayout[
  topspace=\zeropoint,
  %bottomspace=\zeropoint,
]

I thought that by eliminating topspace and eliminating bottomspace the page's text height would automatically be calculated to fill the entire area.
Minimum Working Example
An example that shows what I'm trying to achieve:
\setuppapersize[letter][letter]
\setuplayout[
  topspace=\zeropoint,
  %bottomspace=\zeropoint,
]

\showframe

% Use roman numerals for the front matter
\definestructureconversionset[frontpart:pagenumber] [] [romannumerals]
\setuppagenumbering[location={footer,right},alternative=singlesided]

\starttext

\startfrontmatter
  \setuppagenumbering[conversion=romannumerals]
  \setcounter[userpage][1]

  % Table of Contents
  \completecontent
\stopfrontmatter

\startbodymatter
\setuppagenumbering[conversion=numbers]
\setcounter[userpage][2]

\startchapter[
  title={chapter},
  reference=sec:chapter,
]

\startsection[
  title={section},
  reference=sec:section,
]

\stopsection

\stopchapter

\stopbodymatter

\stoptext

Question
How would you move the page number to the very bottom of the page, as shown in the following image:

Is this something that needs a dynamic layer?
Related

*

*Set layout for the first page of Chapters in ConTeXt

*ConTeXt MarkIV: Pagenumber in layer not working

*http://wiki.contextgarden.net/Layout

A: You can use height=fit (see Wiki - setuplayout), which stretches the text height to its
maximum, pushing the footer including page number all the way down.
Since you probably do not want the text height to be that large, you can increase the footerdistance. Example:
\setuplayout
  [topspace=\zeropoint,
    height=fit,
    footerdistance=2cm]

\setuppagenumbering
  [location={footer, right}]

\showframe
\starttext
  \null
\stoptext

To shift the page number to the right, you can move it into the margin using
\setuppagenumbering
  [location={footer, right, margin}]

A: Marco has already given an answer to your question, but let me illustrate another way to visually achieve the same result.
Layers are a convenient way to place something at a particular location on a page. For example, to place the page number at the very bottom of the page, you can use
\setuppapersize[A6]

\definelayer
  [pagenumber]
  [
    width=\paperwidth,
    height=\paperheight,
    preset=rightbottom,
  ]

\setupbackgrounds[page][background=pagenumber, setups=setpagenumber]

\startsetups setpagenumber
  % Set the page number to be (2em, \lineheight) from the bottom right corner
  % Note the `preset=rightbottom` above.
  %
  % The 2nd set of optional arguments are for the frame. For illustration I change
  % the color and font of the page number
  \setlayerframed
    [pagenumber]
    [
      x=2em,
      y=\lineheight,
    ]
    [
      frame=on,
      foregroundcolor=red,
      foregroundstyle=bold,
    ]
    {\pagenumber}
\stopsetups

% Disable default page numbering
\setuppagenumbering[location=]

\starttext
\input knuth
\input knuth
\input knuth
\stoptext

which gives

This approach is useful if you need to place the page number in a non-conventional place (as done in many of the ConTeXt manuals).


After Ged Garner scored his first goal for Fleetwood Town in the FA Cup win at Alfreton, another of the club's young attackers will be back to fight for his place in January.
Ashley Nadesan is on loan at Carlisle United to gain first-team experience, having made only four appearances for Town.
The striker, 24, has netted seven times in 17 appearances for ex-Fleetwood boss John Sheridan's League Two club, having scored four in 15 during his previous spell at the end of last season, and Town head coach Joey Barton says Nadesan will return to Highbury when his loan expires in the New Year.
That's why Barton would not allow the striker to play in the Cumbrians' FA Cup win at Crewe Alexandra and risk being cup-tied.
Barton said: "We didn't think he would get enough minutes here and he is a lad who needs to play football.
"He has gone to Carlisle, done really well and we are going to bring him back in January and see where he is at.
"He will have an opportunity to fight for his place in the side. We are hoping to still be in the FA Cup in January, so it would be foolish for us to get him cup-tied.
With Nadesan out on loan, 19-year-old academy product Garner is fighting for first-team recognition.
The forward scored his first senior goal on his third appearance on Sunday, nodding home Ross Wallace's injury-time cross to complete Town's 4-1 win at Alfreton.
In the second round Town will visit another National League North club in Guiseley, who stunned League Two Cambridge 4-3 last weekend.
Before then, Barton says Garner is pushing for a start in tonight's Checkatrade Trophy group decider at League Two Bury, where victory by a two-goal margin will secure a place in the next round for Fleetwood.
Barton said: "Ged was very impressive in a development game at Huddersfield last week, to the point where we were tempted to start him at Alfreton.
"But we all know what the FA Cup can throw up if you go in with uncertainty and we didn't really want to pitch him into that, but we always had a plan to throw him in (as a substitute). He is progressing great.


text:
package org.apache.geode.internal.sequencelog.model;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import java.util.regex.Pattern;

import org.apache.geode.internal.sequencelog.GraphType;

public class GraphSet implements GraphReaderCallback {
  private Map<GraphID, Graph> graphs = new HashMap<GraphID, Graph>();
  private long maxTime = Long.MIN_VALUE;
  private long minTime = Long.MAX_VALUE;
  private final Map<String, Long> locations = new HashMap<String, Long>();

  private Set<EdgePattern> edgePatterns = new TreeSet<EdgePattern>();

  public void addEdge(long timestamp, GraphType graphType, String graphName, String edgeName,
      String state, String source, String dest) {
    addEdge(timestamp, graphType, graphName, edgeName, state, source, dest, false);
  }

  private void addEdge(long timestamp, GraphType graphType, String graphName, String edgeName,
      String state, String source, String dest, boolean isFromPattern) {
    if (source == null) {
      source = "ERROR_NULL";
    }
    if (dest == null) {
      dest = "ERROR_NULL";
    }
    GraphID id = new GraphID(graphType, graphName);
    Graph graph = graphs.get(id);
    if (graph == null) {
      graph = new Graph(id);
      graphs.put(id, graph);
    }
    graph.addEdge(timestamp, edgeName, state, source, dest, isFromPattern);
    if (timestamp < minTime) {
      minTime = timestamp;
    }
    if (timestamp > maxTime) {
      maxTime = timestamp;
    }

    if (source != null) {
      updateLocations(source, timestamp);
    }
    if (dest != null) {
      updateLocations(dest, timestamp);
    }

  }

  private void updateLocations(String location, long timestamp) {
    Long time = locations.get(location);
    if (time == null || time.longValue() > timestamp) {
      locations.put(location, timestamp);
    }

  }

  public void addEdgePattern(long timestamp, GraphType graphType, Pattern graphNamePattern,
      String edgeName, String state, String source, String dest) {
    edgePatterns.add(
        new EdgePattern(timestamp, graphType, graphNamePattern, edgeName, state, source, dest));

  }

  /**
   * Indicate this graphset is done populating. Triggers parsing of all of the graph patterns.
   */
  public void readingDone() {
    for (EdgePattern edgePattern : edgePatterns) {
      for (GraphID graphId : graphs.keySet()) {
        if (edgePattern.graphNamePattern.matcher(graphId.getGraphName()).matches()
            && edgePattern.graphType.equals(graphId.getType())) {
          addEdge(edgePattern.timestamp, graphId.getType(), graphId.getGraphName(),
              edgePattern.edgeName, edgePattern.state, edgePattern.source, edgePattern.dest, true);
        }
      }
    }
  }

  public Map<GraphID, Graph> getMap() {
    return graphs;
  }

  public long getMaxTime() {
    return maxTime;
  }

  public long getMinTime() {
    return minTime;
  }

  public List<String> getLocations() {
    List<String> result = new ArrayList<String>(locations.keySet());
    Collections.<String>sort(result, new Comparator<String>() {
      public int compare(String o1, String o2) {
        Long time1 = locations.get(o1);
        Long time2 = locations.get(o2);
        return time1.compareTo(time2);
      }
    });
    return result;
  }

  private static class EdgePattern implements Comparable<EdgePattern> {
    private final long timestamp;
    private final GraphType graphType;
    private final Pattern graphNamePattern;
    private final String edgeName;
    private final String state;
    private final String source;
    private final String dest;

    public EdgePattern(long timestamp, GraphType graphType, Pattern graphNamePattern,
        String edgeName, String state, String source, String dest) {
      this.timestamp = timestamp;
      this.graphType = graphType;
      this.graphNamePattern = graphNamePattern;
      this.edgeName = edgeName;
      this.state = state;
      this.source = source;
      this.dest = dest;
    }

    public int compareTo(EdgePattern o) {
      int timeDifference = Long.signum(timestamp - o.timestamp);
      if (timeDifference != 0) {
        return timeDifference;
      } else {
        // don't really care about the order, but want to make them unique in the set.
        return System.identityHashCode(this) - System.identityHashCode(o);
      }
    }
  }
}

redpajama_set_name: RedPajamaGithub


Why buy land for sale in Grantham?
A rare opportunity to acquire a block of pasture land measuring 6.87 acres on the outskirts of Grantham. The land is suitable for a variety of uses and is ideally sized for grazing livestock, paddock conversion or for amenity or recreational use. The site is surrounded by dense residential housing and may accordingly be considered to benefit from some considerable 'hope-value' for future development. With rising land values, this land could offer buyers a potentially strong long-term capital investment.
The land's future development potential is partly due to a considerable lack of housing in the district and more significantly a shortfall of affordable homes. Grantham accounts for 44% of this shortfall - the largest deficit in the district. This shortfall has led to Grantham being identified as having significant potential for growth and new housing developments. With a considerable lack of housing, expansion of this scale cannot occur without the development of Greenfield sites.
The land is strategically located on the eastern edge of Grantham; a modern town that is highly populated and which serves as a central hub to many of the surrounding towns and villages. These, together with the larger cities of Nottingham and Peterborough, can be easily reached by a superb network of transport links, with Grantham perfectly located on the A1 trunk road that connects the site with London.
Access to the land is off Cold Harbour Lane via an established track which also serves Beacon Cottage. The land benefits from full vehicular right of way via an easement (shown blue on the site plan).
The land is subject to an Overage Provision of 25% for a period of 19 years for any increase in value accruing to the land because of planning permission.
Not looking for land for sale in Grantham?
Fordham Research, experts in the assessment of housing need and viability, were commissioned to carry out a Housing Needs Assessment for South Kesteven district. The study was designed to assess the future requirements for both affordable and market housing.
Overall, the study summarizes that the need for additional affordable housing is significantly greater than the level of estimated new dwellings in the District.
There is currently a shortfall of 646 units per annum, most notably in Grantham.
Due to an increasing population there will undoubtedly be pressure on the local housing market and an increasing demand for affordable housing, suggesting that this shortage will continue in the future.
The backlog of existing need suggests a requirement for 1,226 units per annum. The total estimated supply to meet this need is less than 50% at 580 units per year - leaving a shortfall of 646 units per year.
The sub-area with the largest shortfall of affordable housing is Grantham, with a need of 436 units per annum (of the total 1,226) - the largest of any area.
Of these 436 units, only estimated supplies of 152 units are expected to meet this need, leaving a shortfall of 284 units per annum in Grantham.
Grantham accounts for 44% of the overall shortfall of affordable housing in the district.
The East Midlands Regional Plan housing requirement for South Kesteven is 16,800 dwellings during the period of 2001-2026.
The Regional Plan concentrates development in Grantham and identifies the town as one of two main areas in the region for new housing developments.
Grantham in particular has significant potential for growth, assisted by the town's recognition as a New Growth Point.
In 2007 Grantham was awarded Growth Point Status and £7 million from Department of Communities and Local Government. Grantham's application set out a clear strategy for the town's growth and development over the next 10 years and beyond.
To do this Grantham must provide a wide range of housing, including affordable housing, and improve the attractiveness of the town centre as a retail destination and a place where people can relax and enjoy their leisure time. Successful delivery of the town's growth agenda will also ensure that it will become a successful business destination.
The priority for development remains the re-use of vacant or derelict sites and buildings in accordance with current national planning guidance.
However, these sites alone do not have sufficient capacity to accommodate all of the new housing or employment growth that has been identified for Grantham in the period to 2026; hence expansion of this scale cannot occur without the development of Greenfield sites.
South Kesteven District Councilplans to build 10,000 houses, much on Greenbelt land, increasing the town's population from 38,000 to over 60,000. Doubling the population will require doubling the number of schools, shops and other services.
The developments planned on Greenbelt land are at Poplars Farm and on land between Spittlegate Levels and Somerby Hill.
Poplar Farm is a Greenfield site. A planning application for 1,800 dwellings, a local centre, school and link road has been submitted to the District Council. It is a prominent, sloping site, which is not classified as the "best and most versatile" agricultural land. Policy states that "little significance" should be attached to the loss of poorer quality land.
Land between Spittlegate Levels and Somerby Hill is a mix of Brownfield and Greenfield land: the Greenfield part of the site forms the majority.
The overall development is likely to provide up to 4,000 new homes alongside new local shops, schools, open space and community facilities. A new relief road will be provided as part of the development.
Grantham's town centre is prime for regeneration and has great potential to grow and develop.
Grantham is centrally located in Lincolnshire, surrounded my many rural towns and villages providing ample space for equestrian activities. The local area is home to many equestrian centres, riding schools and livery yards each unique in providing excellent facilities and services for the horses and riders, the majority of which surround the town of Grantham.
To arrange a site visit or to buy the land for sale in Grantham; please call 01727 701330 or email enquiries@vantageland.co.uk.


How to remove bevels, spaces and box shadows from OBIEE Dashboard?
By default, dashboard sections are visually separated from each other using spaces, borders, bevels and box shadows. Also the default color of dashboard background is light blue. We may want to remove it to get a cleaner dashboard display.
How to create sub folders in Presentation Layer?
This can be done in Oracle BI Administration Tool by adding them in Child Presentation Tables tab in presentation layer table Properties.
How to hide a column or section from the dashboard display?
This workaround allows you to embed dashboard objects that are hidden from the view. Using this property you can hide Dashboard Column, Section or Alert Section objects. To hide particular reports or prompt you need to put them inside the hidden column or section.
Click on Custom CSS Style Options (HTML Only) and check Use Custom CSS Style.
The element with this property won't be displayed on the dashboard. Note that this affects only the display of the dashboard, if you export the dashboard contents to a PDF the objects hidden with the CSS formatting will be visible.
When a prompt is added to a report in OBIEE, it will ask user to provide the prompt values when the report is opened. Report results will be filtered by the values chosen by user in prompts. After that, user can't change the report's filtering condition as the prompts are no longer visible. To solve this, we will add button with a link to take the user back to prompts.
How to add Go to Prompts button to the report?
Let's add a Static Text view in report's results page.
replacing the path= parameter with the path to the report starting with forward slash / (%2F in URL encoding).
Below the Static Text field you can see the preview of the button. Add the Static Text view to report's Compound Layout.
Now the report displays 'Go to Prompts' button that takes user back to prompts.


text:
package org.springframework.web.context.request;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionBindingListener;

import org.springframework.util.Assert;
import org.springframework.util.StringUtils;
import org.springframework.web.util.WebUtils;

/**
 * Servlet-based implementation of the {@link RequestAttributes} interface.
 *
 *
Accesses objects from servlet request and HTTP session scope,
 * with no distinction between "session" and "global session".
 *
 * @author Juergen Hoeller
 * @since 2.0
 * @see javax.servlet.ServletRequest#getAttribute
 * @see javax.servlet.http.HttpSession#getAttribute
 */
public class ServletRequestAttributes extends AbstractRequestAttributes {

	/**
	 * Constant identifying the {@link String} prefixed to the name of a
	 * destruction callback when it is stored in a {@link HttpSession}.
	 */
	public static final String DESTRUCTION_CALLBACK_NAME_PREFIX =
			ServletRequestAttributes.class.getName() + ".DESTRUCTION_CALLBACK.";

	private final HttpServletRequest request;

	private volatile HttpSession session;

	private final Map sessionAttributesToUpdate = new HashMap();

	/**
	 * Create a new ServletRequestAttributes instance for the given request.
	 * @param request current HTTP request
	 */
	public ServletRequestAttributes(HttpServletRequest request) {
		Assert.notNull(request, "Request must not be null");
		this.request = request;
	}

	/**
	 * Exposes the native {@link HttpServletRequest} that we're wrapping.
	 */
	public final HttpServletRequest getRequest() {
		return this.request;
	}

	/**
	 * Exposes the {@link HttpSession} that we're wrapping.
	 * @param allowCreate whether to allow creation of a new session if none exists yet
	 */
	protected final HttpSession getSession(boolean allowCreate) {
		if (isRequestActive()) {
			return this.request.getSession(allowCreate);
		}
		else {
			// Access through stored session reference, if any...
			if (this.session == null && allowCreate) {
				throw new IllegalStateException(
						"No session found and request already completed - cannot create new session!");
			}
			return this.session;
		}
	}

	public Object getAttribute(String name, int scope) {
		if (scope == SCOPE_REQUEST) {
			if (!isRequestActive()) {
				throw new IllegalStateException(
						"Cannot ask for request attribute - request is not active anymore!");
			}
			return this.request.getAttribute(name);
		}
		else {
			HttpSession session = getSession(false);
			if (session != null) {
				try {
					Object value = session.getAttribute(name);
					if (value != null) {
						synchronized (this.sessionAttributesToUpdate) {
							this.sessionAttributesToUpdate.put(name, value);
						}
					}
					return value;
				}
				catch (IllegalStateException ex) {
					// Session invalidated - shouldn't usually happen.
				}
			}
			return null;
		}
	}

	public void setAttribute(String name, Object value, int scope) {
		if (scope == SCOPE_REQUEST) {
			if (!isRequestActive()) {
				throw new IllegalStateException(
						"Cannot set request attribute - request is not active anymore!");
			}
			this.request.setAttribute(name, value);
		}
		else {
			HttpSession session = getSession(true);
			synchronized (this.sessionAttributesToUpdate) {
				this.sessionAttributesToUpdate.remove(name);
			}
			session.setAttribute(name, value);
		}
	}

	public void removeAttribute(String name, int scope) {
		if (scope == SCOPE_REQUEST) {
			if (isRequestActive()) {
				this.request.removeAttribute(name);
				removeRequestDestructionCallback(name);
			}
		}
		else {
			HttpSession session = getSession(false);
			if (session != null) {
				synchronized (this.sessionAttributesToUpdate) {
					this.sessionAttributesToUpdate.remove(name);
				}
				try {
					session.removeAttribute(name);
					// Remove any registered destruction callback as well.
					session.removeAttribute(DESTRUCTION_CALLBACK_NAME_PREFIX + name);
				}
				catch (IllegalStateException ex) {
					// Session invalidated - shouldn't usually happen.
				}
			}
		}
	}

	public String[] getAttributeNames(int scope) {
		if (scope == SCOPE_REQUEST) {
			if (!isRequestActive()) {
				throw new IllegalStateException(
						"Cannot ask for request attributes - request is not active anymore!");
			}
			return StringUtils.toStringArray(this.request.getAttributeNames());
		}
		else {
			HttpSession session = getSession(false);
			if (session != null) {
				try {
					return StringUtils.toStringArray(session.getAttributeNames());
				}
				catch (IllegalStateException ex) {
					// Session invalidated - shouldn't usually happen.
				}
			}
			return new String[0];
		}
	}

	public void registerDestructionCallback(String name, Runnable callback, int scope) {
		if (scope == SCOPE_REQUEST) {
			registerRequestDestructionCallback(name, callback);
		}
		else {
			registerSessionDestructionCallback(name, callback);
		}
	}

	public String getSessionId() {
		return getSession(true).getId();
	}

	public Object getSessionMutex() {
		return WebUtils.getSessionMutex(getSession(true));
	}

	/**
	 * Update all accessed session attributes through session.setAttribute
	 * calls, explicitly indicating to the container that they might have been modified.
	 */
	protected void updateAccessedSessionAttributes() {
		// Store session reference for access after request completion.
		this.session = this.request.getSession(false);
		// Update all affected session attributes.
		synchronized (this.sessionAttributesToUpdate) {
			if (this.session != null) {
				try {
					for (Iterator it = this.sessionAttributesToUpdate.entrySet().iterator(); it.hasNext();) {
						Map.Entry entry = (Map.Entry) it.next();
						String name = (String) entry.getKey();
						Object newValue = entry.getValue();
						Object oldValue = this.session.getAttribute(name);
						if (oldValue == newValue) {
							this.session.setAttribute(name, newValue);
						}
					}
				}
				catch (IllegalStateException ex) {
					// Session invalidated - shouldn't usually happen.
				}
			}
			this.sessionAttributesToUpdate.clear();
		}
	}

	/**
	 * Register the given callback as to be executed after session termination.
	 * @param name the name of the attribute to register the callback for
	 * @param callback the callback to be executed for destruction
	 */
	private void registerSessionDestructionCallback(String name, Runnable callback) {
		HttpSession session = getSession(true);
		session.setAttribute(DESTRUCTION_CALLBACK_NAME_PREFIX + name,
				new DestructionCallbackBindingListener(callback));
	}

	public String toString() {
		return this.request.toString();
	}

	/**
	 * Adapter that implements the Servlet 2.3 HttpSessionBindingListener
	 * interface, wrapping a session destruction callback.
	 */
	private static class DestructionCallbackBindingListener implements HttpSessionBindingListener, Serializable {

		private final Runnable destructionCallback;

		public DestructionCallbackBindingListener(Runnable destructionCallback) {
			this.destructionCallback = destructionCallback;
		}

		public void valueBound(HttpSessionBindingEvent event) {
		}

		public void valueUnbound(HttpSessionBindingEvent event) {
			this.destructionCallback.run();
		}
	}

}


Just fyi Cerberus didn't die and go to heaven. He got lost and just-cause he lives in the underworld-he can like-sneak into heaven.
Yes, although almost nothing about the movie is accurate. (ie. Heracles [In the original Greek mythology it was spelled like this] was born a demigod [the child of a mortal and a god], and when he was dying Zeus made him a god, Hades wasn't evil, Phobos and Demos [Fear and Panic] were with Ares, not Hades, etc.) It is a good movie though.
Isn't he from the movie hercules ?


text:
Total injury rate increases by 3.62%, while Time Loss injury rate increases by 6.99%
- 2018 Total injury rate was 5.44 per 100 workers
- Time Loss injury rate was 1.99 per 100 workers
- 22 rate codes (44.90% of rate codes) had a lower Total injury rate than in 2017
- 88% of Saskatchewan employers achieved zero injuries
REGINA, SK – The Saskatchewan Workers' Compensation Board released its 2018 injury rates today. The workplace Total injury rate for 2018 was 5.44 per 100 workers, a 3.6 per cent increase from 2017.
"While we are seeing a slight increase in 2018 injury rates, thanks to the health, safety and prevention efforts of people around the province, 88 per cent of Saskatchewan employers achieved Mission: Zero – zero injuries, zero fatalities and zero suffering," said Phil Germain, Vice-President of Prevention and Employer Services at the WCB. "Approximately 45 per cent of WCB rate codes had lower Total injury rates in 2018 compared to 2017. However, the remaining 55 per cent had higher Total injury rates in 2018. Also this past year, the Time Loss injury rate increased to 1.99 per 100 workers compared to 1.86 per 100 workers in 2017."
The Saskatchewan Time Loss injury rate did not decrease in 2017 and stayed consistent with the Saskatchewan 2016 rate of 1.86 per 100 workers. At that time, WorkSafe Saskatchewan cautioned that injury rates might increase in 2018, which they have.
"This is a development we must address immediately and it will mean working together to ensure our workplaces remain safe," said Germain. "All of us from individuals to organizations to leadership need to take part in ensuring our injury rates do not increase further."
In 2018:
Total claims accepted increased from 22,247 in 2017 to 22,371 in 2018. Total number of workers covered decreased slightly from 423,527 workers in 2017 to 410,600 workers in 2018.
Accepted No Time Loss claims decreased from 14,342 in 2017 to 14,192 in 2018.
The 2018 Time Loss injury rate increased to 1.99 per 100 workers, a 7.0 per cent increase from 2017. Accepted Time Loss claims increased from 7,888 in 2017 to 8,151 in 2018.
"The increase in both the Total injury rate and the Time Loss injury rate in 2018 may indicate these rates could increase in 2019 as well. We need to keep working together to take action on safety for ourselves and our co-workers," said Germain.
Most alarming in 2018 is the number of fatalities. There were 48 fatalities in 2018, an increase of 78 per cent from 2017. Over the past 15 years, the WCB has seen an average of 37 workplace fatalities per year. In 2017, the WCB saw the lowest number in the past 15 years at 27.
"This is devastating for our province. Behind every statistic is a loved one who will never come home to their family. The impact of losing someone dear to us is devastating," said WCB CEO Peter Federko. "We've embarked on several research projects with the University of Regina and the University of Saskatchewan to understand more about our workplace fatalities."
There is evidence from the International Social Security Association that serious injury and fatality prevention increases the overall level of safety in a workplace. In 2018, the WCB developed a serious injury definition. This analysis revealed that for the 2015 – 2017 period, approximately 2,400 injuries met the serious injury definition each year. Serious injuries represented approximately 10 per cent of all injuries and 75 per cent of compensation days paid in 2017 for claims registered in 2017.
"Focusing on serious injuries and fatalities could get us closer to Mission: Zero," said Federko. "We will continue to make this a top priority in 2019 as part of our serious injury and fatality initiative."
The top causes of fatalities in 2018 were from occupational diseases and motor vehicle collisions. WorkSafe Saskatchewan, the WCB's partnership with the Ministry of Labour Relations and Workplace Safety, launched several resources and campaigns in 2018 targeting the highest causes of workplace injuries and deaths.
WorkSafe offers resources, awareness campaigns, education, training, and targeted initiatives to help eliminate workplace injuries and fatalities. Last year, the WCB signed a data sharing agreement with SGI to help determine the causes of motor vehicle crashes.
"Keeping our workplaces safe is a shared responsibility," said WCB Chairperson Gord Dobrowolsky. "We can only achieve Mission: Zero when everyone works together. We will keep working with employers, workers and partners until we achieve zero injuries and zero fatalities."
Carolyn Van der Veen
WCB Director, Communications
cvanderveen@wcbsask.com
Toll free: 1.800.667.7590 ext. 4386
Operating results


Here is our new style, based off the Madeline gown from the movie Interview with the Vampire. (we have claudia also) This is a gorgeous faux silk gown, with all black sparkle/beaded laces and trims.
Bodice is lined and has boning, laces up in back so it is adjustable. Skirt is a victorial reproduction pattern, back can have large bow, smaller bow, or no bow. We will include a slip with hoop at the bottom, and a matching fabric choker.


Business CustomersInformation on multi-user, company and service provider licenses. Licensing terms and volume discounts for established businesses.
Public AuthoritiesAssistance with support and advice during the purchasing process. Also, please ask us if special considerations are to be met.
Educational InstitutionsAnswers to licensing questions, support and advice for the buying process as well as information about educational discounts.
ResellersBecome a part of our world-wide reseller network. We offer high quality products at attractive purchase prices.
AffiliatesBecome an affiliate and sell our products on occasion. We offer attractive conditions turning your efforts into profit.
DistributorsBenefit from adding first class products to your assortment. Offer attractive conditions to our worldwide distributors.
OEMDistribute our products under your brand - we offer you all options from optical adaptation to full product integration.


text:
Search Office Space, SOS - Central London
33 Broadwick Street, London, W1F 0DQ
Serviced Office to rent
Liverpool Street, London, EC2M
From £2,400 pcm
200–350 sq. ft.
200 sq ft (18 sq m)
No Agent Fees!
Call to arrange viewing
All inclusive Prices
Having been the target of London's first attack during WW1, this historic building now provides an opportunity to work in fully furnished office space with flexible terms, in the heart of the city. The space offers great views over Liverpool Street Station and numerous facilities to meet your needs.
Office Description
Our Liverpool Street offices is a bit of a fighter. After being the target of London's first attack during the First World it also survived British Rail's plans to demolish the station in favour of a modern development. The now famous 1979 conservation campaign was led by Sir John Bejtemen and Sir Spike Milligan, and the building subsequently becoming the muse for some pretty decent poetry. Design wise, think copper, steel mesh, stained timber and panelling and a good mix of classic and contemporary. Arched windows look into Liverpool Street Station itself and yes ok, it is the one beside McDonad's. Part of our Partnership with Network Rail. Individual offices in Liverpool Street Station, on flexible terms, but with the whole building for you to use.
For those wishing to cycle to work, there is a secure bike storage space. Liverpool Street Station is seconds from the office door, offering connections locally and nationally, as well as to the London Underground system. All major bus routes are served, providing fast connections in and around London and also to Essex. The A10 is in close proximity, providing easy links out of London towards Enfield, and for those wishing to drive, there are many car parks in the vicinity.
Office sizes and availability do change. Please contact us on the telephone number below, for our latest office sizes and availability. Whilst we use all reasonable efforts to ensure that the information published on this website is accurate, current, and complete at the date of publication, no representations or warranties are made (express or implied) as to the accuracy, currency or completeness of such information. We cannot accept any responsibility (to the extent permitted by law) for any loss arising directly or indirectly from the use of, or any action taken in reliance on, any information appearing on this website or any other website to which it may be linked.
Liverpool Street (0.0 mi)
Moorgate (0.3 mi)
Aldgate (0.4 mi)
Property reference 17282. The information displayed about this property comprises a property advertisement. Rightmove.co.uk makes no warranty as to the accuracy or completeness of the advertisement or any linked or associated information, and Rightmove has no control over the content. This property advertisement does not constitute property particulars. The information is provided and maintained by Search Office Space, SOS - Central London.
A-Bo
Br-Ch
Cl-Ea
Ed-Ha
He-Le
Li-Na
Ne-P
R-So
Sp-Wa
We-Y
Major commercial cities in the UK


Craigslist bills itself as an "online community." Unfortunately, online communities are apparently no less prone to crooks than their brick-and-mortar brethren, as nine apartment hunters who were bilked out of rent deposits by a smooth-talking con artist masquerading as a rental agent have all discovered in recent weeks.
In an incident that occurred on Aug. 10 (but wasn't reported to the police until Sept. 3), a 24-year-old California woman said that she'd found the East 95th Street apartment while shopping on Craigslist. She sent the apartment's alleged rental agent two unsigned $1,400 checks—one for the first month's rent, the other for the security deposit.
Her understanding was that she'd sign the checks upon receiving the keys to the apartment. But the perp—described as approximately six feet tall and in his late 20's—signed the checks himself and then cashed them. The victim was unable to reach him on his cell phone.
In an Aug. 31 incident, a suspect fitting a similar description did give a set of keys for an apartment at 329 East 92nd Street to a 25-year-old client in exchange for a $3,000 rent check. However, when the victim tried to move in on Sept. 1, he discovered that the keys didn't open the door. He contacted the building's management company, but the company informed him that it only rents out apartments after completing tenant-background checks.
That victim, an East Seventh Street resident, wasn't the only person that the suspect had rented the apartment to for the month of September. A 21-year-old East 119th Street resident told the police that after she found the listing on Craigslist, the con man—whom she described as a 26-year-old, six-foot-tall male with a European accent—fraudulently represented himself as an authorized agent to rent the apartment. She, too, was left empty-handed after the con man cashed two of her checks, worth a total of $3,600.
The police said that the victims wrote the checks without actually ever setting foot in the apartments—victims apparently not only of the Craigslist crook, but of the urge to live in Manhattan. Why would anyone fork over several thousand dollars for an apartment sight unseen? "Because it sounds like a good deal," explained a police officer.
The works of John Steinbeck are making a comeback, if a recent incident is any indication. In a July 19 crime that was reported to the police on Sept. 9, a male entered Ursus Books and Prints Ltd. at 981 Madison Avenue and removed an autographed first edition of Steinbeck's East of Eden, valued at $3,500. He then sold it to another rare book dealer in Boston; that dealer informed Ursus, which subsequently recovered the property. As despicable as the crime was, the thief apparently didn't play favorites: He also stole a rare book by James Joyce, valued at $2,250, from the Boston book dealer and sold it to Ursus.
The suspect, described as a six-foot, 175-pound, 50-year-old male, was subsequently arrested by the Boston Police Department.
In another literary-related theft—or, more precisely, a case of literary identity theft—a 91-year-old East 88th Street resident issued a complaint to police on Sept. 11 that somebody had been swiping his subscription to The New Yorker.
The victim informed the cops that he was a devoted New Yorker reader—not one of those parvenus who only read the cartoons—whose subscription spanned the William Shawn, Robert Gottlieb, Tina Brown and David Remnick eras (even though he couldn't remember the magazine under Harold Ross' sharpened pencil).
He added that after not receiving his favorite read for two or three months, he called the magazine's 1-800 number and was told that the subscription's address had been changed to 201 East 28th Street.
The nonagenarian assured the cops that he hadn't moved, nor had he requested the change of address. Adding insult to injury, he'd been paying for his subscription while it was being shipped to a part of town that is, well, not quite New Yorker country.
Be it James Joyce or Art Spiegelman, those of a certain age will tell you that it all looks like gibberish if you've misplaced your reading glasses or, worse, had them stolen.
That's the predicament a 58-year-old East 82nd Street resident found herself in at a Barnes & Noble on Sept. 2. The victim had placed her glasses on a table at the store's 240 East 86th Street location as she momentarily stepped away to retrieve another book; she apparently made the mistake that many customers do, mistaking Barnes & Noble for her rec room.
When she returned, her spectacles were gone. And these weren't any old generic over-the-counter reading glasses, but a pair of posh black Armani eyewear valued at $388.
Ralph Gardner can be reached at RGard135@aol.com.


text:
Home Flying High Domestic IndiGo announces 21 additional flights in winter schedule for 2022-23
IndiGo announces 21 additional flights in winter schedule for 2022-23
In line with its vision to strengthen regional connectivity, IndiGo has launched 21 additional flights as part of its winter schedule for 2022-23. The operations commenced December 09, 2022, onwards for flights from Hyderabad and Kolkata to beach destinations like Port Blair, Kochi, and Goa respectively. These seasonal additions are being introduced to cater to the increasing demand and improve accessibility in the region.
Speaking on the occasion, Mr. Vinay Malhotra, Head of Global Sales, IndiGo said, "We are witnessing high traffic demand which is enabling the industry's recovery. As beach destinations are in high demand from October to February, these new flights will increase direct connectivity from Hyderabad and Kolkata to Port Blair, Kochi, and Goa respectively. Our winter schedule flights will add capacity and make travel affordable while offering more options to customers. We will continue to uphold our promise of providing a courteous, on-time, hassle-free, and affordable travel experience."
These locations are well-known for their beautiful and spectacular tourist attractions. Hyderabad also called the City of Pearls is known for its heritage including famous monuments like Charminar, Chowmahalla Palace, the Falaknuma Palace, and Qutub Shahi Tomb. Kolkata or 'the city of joy', is known for its colonial architecture, museums, art galleries, traditional food, temples, music, theatre, and a very rich culture. It is an amalgamation of traditional and modern as it was the capital of the British during their rule. Victoria Memorial, Princep Ghat, Alipore Zoological Garden, St Paul's Cathedral, Park Street, Howrah Bridge are some of the most visited tourist attractions.
Goa on the other hand is one of the most favorite destinations among Indian tourists due to its beaches and nightlife. It is famous for its churches, age-old ruins, palm-fringed beaches, coconut groves, ferry rides, and nightlife. With its 131 km-long coastline, and beaches like Baga, Calangute, Vagator and Anjuna make Goa an important destination in every tourist's itinerary. Rich in culture and diversity, Port Blair with its historical tourist spots, makes it a perfect gateway to Andaman and Nicobar Islands. It is also famous for the historic Cellular Jail and other small islands like Corbyn's Cove, Wandoor, Ross Island, Viper Island and so forth, which were once home to British colonists. Port Blair has also been selected as one of the cities to be developed as a smart city under the Smart Cities Mission. Kochi, also known as Cochin, is one of the most picturesque destinations on the southwest coastline of Kerala. An all-weather harbor and a grand seascape mark it as the "Queen of the Arabian Sea". Cochin Port is a cruise port and has witnessed encouraging growth with the arrival of luxury cruise liners to its shores. Destinations like Hill Palace Museum, Santa Cruz Cathedral Basilica Fort, Fort Kochi, Mattancherry, Bolghatty & Vypeen Islands, Cherai & Vypeen beach, Andhakaranazhi beach and Marine Drive are some of the must-visit places in Kochi.
The new flights are designed to cater to travellers who are constantly on the lookout for new and affordable flying options to access destinations that help in building businesses and are known for their tourist attractions. Customers who wish to plan their travel can book tickets via our official website. The introduction of these flights will further bolster domestic connectivity.
Previous articleQatar hosts more than 1.4 million visitors during FIFA World Cup
Next articleVietjet inaugurates new route from Ahmedabad to Da Nang


May is national Electrical Safety Month and throughout the month, NFPA and ESFI have been raising awareness of potential home electrical hazards and the importance of electrical fire safety.
This week we're highlighting our updated "Keeping Your Community Safe and Energized" toolkit for the fire service. From customized news releases and letters to the editor, to tip sheets (also available in Spanish) and talking points, the toolkit provides resources to help local fire departments spread the word about electrical safety to residents. Just download the information you need, print it out and distribute. Or take advantage of the great information available and provide tips and ideas in your newsletter or on social media. .
Learn more about electrical fire safety on NFPA's campaign webpage and at www.esfi.org, and stay tuned for more great resources throughout the month!


text:
Q: Odd one: Internet Explorer 6 showing the "view source" command enabled when I was expecting it to be disabled OK, I admit this problem is odd. I'm just trying to understand why Internet Explorer is behaving the way it is. I realise that logic may not apply here :)

*

*I have Internet Explorer 6 (Sp1) running on Windows 2000.

*The Internet Explorer option "Do not store encrypted pages to disk" is checked (enabled).

*The temporary internet files folder is empty.

*TEMP and TMP environment variables are set to valid folders.

*I'm connected to a web server over SSL.

*The web server is serving a page over SSL with the HTTP cache-control header set to "no-cache, no-store".

I was expecting the "view source" command to be greyed out in this circumstance (as it is on another machine).
But it works. When I "view source", I get an entry in the Temporary Internet Files folder with an "internet address" property of "view-source:https://myserver/...." and the content of the page. I wasn't expecting that.
I can't understand why one machine is different to another in this regard. Obviously there is some environment/setup difference, but I can't track it down.
Anyone have any bright ideas?

A: I think you're running into a bug with IE 6 and SP 1 taken from here

(7) SSL / Do not save encrypted pages to disk

*

*Category: Solution

*Difficulty: Easy

*From: Greg

*Added: September 06, 2005

*Updated: September 06, 2005

*Version: Windows - any / IE - any
If View Source is turned off for https URLs, it may be because of a security setting. >Look in Tools > Internet Options > Advanced tab > Security section, and look for the >option Do not save encrypted pages to disk. When checked off, this option will >intentionally disable View Source.
And to confuse the issue, according to Microsoft KB article 811102 "Do Not Save >Encrypted Pages to Disk" was not working properly in Internet Explorer 6 SP1, causing it >to leave View Source enabled even when the option was checked. This problem was corrected >in a hotfix. From the KB article:
  After you install this hotfix, if you load SSL-secured content while you have selected >the Do not save encrypted page to disk option, the Source menu is not available.


text:
Q: Should I check for a MySQL connection with is_resource or mysqli_ping? Should I check for a MySQL connection with is_resource or mysqli_ping? Why?
if (!mysql_ping($mysqli)) {
    $mysqli = new mysqli($db_host,
                         $db_username,
                         $db_password,
                         $db_name);
}

if (!is_resource($mysqli)) {
    $mysqli = new mysqli($db_host,
                         $db_username,
                         $db_password,
                         $db_name);
}

A: is_resource($mysqli) does not report MySQLi resource as valid resource type.
MySQLi uses objects as storage container, not resources; even when
using the procedural API, therefore the output is expected.
This has been reported as a bug a long time ago and it is not a bug, it is expected behavior, as stated by johannes in the comment.
So, I guess, you have to use mysqli_ping after all.

A: Both methods serve a different purposes, therefore a general "this-or-that" answer wouldn't do imo. More likely is "use both".
Two corrections before going on:
1) In your script $mysqli = new mysqli(... implies that if valid, $mysqli is an object, not a resource. That's also true if it is created via $mysqli = mysqli_connect(..., though it might also be null to indicate an error. Use $mysqli instanceof MySQLi to check that, not is_resource().
2) Don't mix mysql_* functions with the MySQLi api. So, it would be mysqli_ping instead of mysql_ping.

a) Use $mysqli instanceof MySQLI to check whether the script got an instance of a mysqli connection, regardless of whether the connection is still usable or not. If $mysqli is not an instance of MySQLi, the script can't use the mysqli_* functions or MySQLi::* methods, including mysqli_ping. When using $mysqli=mysqli_connect() instead of $mysqli = new mysqli(...) $mysqli might be NULL. instanceof will "return" false in that case. Same if $mysqli for some reason is false or a string or a number or ....something else other than an instance of MySQLi.
b) If you have an instance of MySQLi, you can use mysqli_ping($mysqli) or $mysqli->ping() to check whether the connection can still be used or needs to be re-established. There are operations on the MySQLi instance that do work without a valid connection, though those are probably not of interest to you.


When God calls us, God equips us with holy strength and human support. No one bears God's word alone, and yet, nothing can make us available to God but the state of our hearts and spirits. The refiner's fire can have many manifestations. It is a call to repentance, introspection, and communal engagement. During Advent there is a need to be called apart from and called into a journey with the community of God.
No amount or configuration of words can do justice to the experience of the Annunciation. How does one describe the descent of a message-laden angel to the home of a seemingly average teenage girl to tell her that the Spirit of God will soon inhabit her youthful womb and she will give birth to the Son of God? There are not enough words in any language to capture that event. And yet what we have in scripture affords us some idea of what God is like and what faithful servanthood resembles.
In chapter one of Luke's gospel we learn that God is not bound by our expectations or limitations. God presumably believes that we are more capable than we think to endure certain experiences and to assist God in divine work in the world. God also anticipates our needs in fulfilling God's desires for us. The fact that Mary found favor with God indicates a previously existing awareness and attention to Mary before Gabriel's visit. This is a good reminder when we are tempted to think God has forgotten us. God is always aware of us. God embraces our questions and is capable of responding to us regardless of what we think of God's response.
We see varied aspects of the faith journey played out through the responses of the Advent characters. Zechariah's questioning of Gabriel hints at our normal tendency to doubt what sounds too good to be true and what is beyond our capacity to imagine. Elizabeth's seclusion and John's sojourn in the wilderness suggests the wisdom of acknowledging that certain seasons do call us to time apart with God. In the Annunciation narrative, Mary's quiet courage, boldness of spirit, and obedience to God speak greatly of her devotion to God.
And in the sixth month the angel Gabriel was sent from God unto a city of Galilee, named Nazareth, to a virgin espoused to a man whose name was Joseph, of the house of David; and the virgin's name was Mary. And the angel came in unto her, and said, Hail, thou that art highly favored, the Lord is with thee: blessed art thou among women. And when she saw him, she was troubled at his saying, and cast in her mind what manner of salutation this should be. And the angel said unto her, Fear not, Mary: for thou hast found favor with God. And, behold, thou shalt conceive in thy womb, and bring forth a son, and shalt call his name Jesus. He shall be great, and shall be called the Son of the Highest: and the Lord God shall give unto him the throne of his father David: And he shall reign over the house of Jacob forever; and of his kingdom there shall be no end. Then said Mary unto the angel, How shall this be, seeing I know not a man? And the angel answered and said unto her, The Holy Ghost shall come upon thee, and the power of the Highest shall overshadow thee: therefore also that holy thing which shall be born of thee shall be called the Son of God. And, behold, thy cousin Elisabeth, she hath also conceived a son in her old age: and this is the sixth month with her, who was called barren. For with God nothing shall be impossible. And Mary said, Behold the handmaid of the Lord; be it unto me according to thy word. And the angel departed from her.
And Mary arose in those days, and went into the hill country with haste, into a city of Juda; and entered into the house of Zacharias, and saluted Elisabeth. And it came to pass, that, when Elisabeth heard the salutation of Mary, the babe leaped in her womb; and Elisabeth was filled with the Holy Ghost: And she spake out with a loud voice, and said, Blessed art thou among women, and blessed is the fruit of thy womb. And whence is this to me, that the mother of my Lord should come to me? For, lo, as soon as the voice of thy salutation sounded in mine ears, the babe leaped in my womb for joy. And blessed is she that believed: for there shall be a performance of those things which were told her from the Lord.
How might Mary's reaction to Gabriel's surprising visit have been different?
What other emotions might we have expected from someone in Mary's situation?
Meditate on verses 19-20: And the angel answering said unto him, I am Gabriel, that stand in the presence of God; and am sent to speak unto thee, and to shew thee these glad tidings. And, behold, thou shalt be dumb, and not able to speak, until the day that these things shall be performed, because thou believes not my words, which shall be fulfilled in their season.
Think outside of your immediate community and consider to what group of people today could this passage be good news?
Spend some intentional time in prayer over the next week asking God to open your eyes to someone whom you might normally pass over. Reflect on why you have not paid attention to this particular person before. Ask God if there is anything for you to learn about what it means to be a part of God's family from this new awareness.


text:
Failure of Water Treatment Plant at B.C. Coal Mine Raises Downstream Concerns – by Tristan Scott (Flathead Beacon – June 20, 2017)
June 20, 2017 in British Columbia Mining, Coal, International Media Resource Articles, Mining Environmental Accidents, Pollution, Tailing Dams and Abandoned Mines
As British Columbia's downstream neighbour, Montana has long been concerned about mining pollution spilling across the international border and into its world-class watersheds — fears that a growing body of research and evidence confirms are well founded.
Most recently, conservation groups and scientists on both sides of the border have renewed their calls for Teck Resources to halt new coal mines in the Elk River Valley, a step they say gained urgency when an experimental water treatment facility designed to stem the flow of a mining contaminant called selenium was taken offline because it was releasing an even more biologically toxic form of the heavy metal.
The trouble brewing in the Elk River is equally worrisome for Montana, where the upstream waterways of British Columbia flow into two shared bodies of water straddling the international boundary — Lake Koocanusa and the Kootenai River.
A spokesperson for Teck, the Vancouver-based global mining giant that operates five steelmaking coal mines just across the border from Montana, acknowledged the problem at the company's water treatment plant and said efforts are underway to correct it.
"We are working to address a challenge related to selenium compounds at our West Line Creek Active Water Treatment Facility," according to a statement. "We have a dedicated team working on this issue and have identified a corrective option that is now undergoing pilot-scale testing at the facility. We are also conducting ongoing, extensive aquatic monitoring. It's not believed that this selenium compound issues poses any immediate risk to aquatic or human health."
For the rest of this article, click here: http://flatheadbeacon.com/2017/06/20/failure-water-treatment-plant-b-c-coal-mine-raises-downstream-concerns/
Minnesota officials tried to avoid another mining failure – by Don Davis (Duluth News Tribune – June 19, 2017)
A real world education: Temagami pit reopening for aggregate production – by Ian Ross (Northern Ontario Business – June 19, 2017)


text:
Brazil joins Venezuela aid campaign
Aid shipments on the Colombian border have so far been blocked by Venezuela
Brazil says it will send humanitarian aid to its border with Venezuela by the weekend, despite the protests of embattled President Nicolás Maduro.
The delivery and distribution of the aid is being organised by Venezuelan opposition leader Juan Guaidó, the Brazilian presidential spokesman said.
Mr Maduro denies there is a crisis in Venezuela and calls the growing aid operation a US-orchestrated show.
Venezuela also closed its border with the Dutch island of Curacao.
The Caribbean island, off Venezuela's north coast, is planning to host US aid. Senior Venezuelan military commander Vladimir Quintero confirmed the closure of the air and sea border on Tuesday, but gave no further details.
The military has so far managed to block shipments of US aid from coming across the border with Colombia.
Meanwhile, Venezuela's military has reaffirmed its support for President Maduro, rejecting a call by US President Donald Trump to switch allegiance to Mr Guaidó.
Juan Guaidó (r) has been recognised by several governments as interim president
Defence Minister Vladimir Padrino, appearing alongside senior officers, said any attempt to impose a new government would have to be done over "our dead bodies".
He said the armed forces would block the delivery of aid sent by the US and other countries that have recognised Mr Guaidó as interim president.
What has Brazil said?
The government of President Jair Bolsonaro is among those which recognises Mr Guaidó as Venezuela's legitimate leader, pending elections.
Presidential spokesman General Otávio Régo Barros said on Tuesday that, in co-ordination with the US, food and medicine would be available in the border town of Pacaraima to be collected by "the government of acting President Juan Guaidó in Venezuelan trucks driven by Venezuelans".
"Brazil is taking part in this important international initiative to support the Guaidó government and the Venezuelan people," he said.
However, it is not clear if the convoy of aid will be allowed to cross the border. Mr Padrino warned on Tuesday that the military was "deployed and on alert along the borders… to avoid any violations of territorial integrity".
Mr Guaidó has said 600,000 volunteers have already signed up to help carry aid into the country on 23 February – the deadline he has set.
What has the US said?
Mr Maduro insists the planned deliveries of aid to Venezuela are a smokescreen for a US-led invasion.
In a speech on Monday, President Trump described Mr Maduro as a "Cuban puppet" and accused a "small handful at the top of Maduro's regime" of stealing and hiding money.
Media captionPresident Trump addressed Venezuelan Americans in southern Florida
He called on the military to abandon Mr Maduro, saying: "They are risking their future, they are risking their lives and Venezuela's future for a man controlled by the Cuban military and protected by a private army of Cuban soldiers."
On Tuesday Cuba denied it had security forces in Venezuela.
"Our government categorically and energetically rejects this slander," Foreign Minister Bruno Rodriguez said in Havana.
What's the background?
Mr Guaidó, the head of the country's opposition-led National Assembly, declared himself interim leader during anti-government protests last month.
He has vowed to oversee fresh elections on the grounds that Mr Maduro's 2018 re-election for a second term was flawed. Many opposition candidates were barred from running or jailed and there were allegations of vote-rigging.
The UN say more than three million Venezuelans have fled in recent years as the country grapples with hyperinflation and shortages of essentials like food and medicine.
Mr Maduro, who has been in power since 2013, has been criticised at home and abroad for his handling of the economy.
He has, however, retained the support of key allies who have helped bankroll the country's economy, including Russia and China.
Please upgrade your browser to view this content.
How the story unfolded
What happened next?
Was this timeline useful?
Share this chatbot.
← Avalanche buries skiers in SwitzerlandEmoji plates to brighten up Queensland cars →
Shares hit record amid trade talk hopes
http://www.bbc.co.uk/news/business-48828230
Probe after black man held while using IV machine
LA Angels pitcher Tyler Skaggs dies aged 27
The presidential hopeful winning Reddits vote
Irans nuclear deal is on life support. Can it be saved?
Michigan governors Harvard appointment draws ire
Shares rise to a record amid trade talk hopes
Body of stowaway from Kenya found in garden
India arrests after mob attacks female officer
http://www.bbc.co.uk/news/world-asia-india-48822530
HK police move in to evict parliament protesters


text:
County council says it will shape Cambridgeshire's future but without Shape Your Place website which is too costly to retain
Shape Your Place, Fenland's online voice - Credit: Archant
It began in Fenland, expanded to the rest of the county, but on March 25 the county council run Shape Your Place community website will close.
Months of trying to persuade district councils to take over running of the website have failed and the county council has decided it can no longer afford to run it.
"It is with regret that, due to the budget cuts, Cambridgeshire County Council has to make, the decision has been made to close the Shape Your Place websites," says a statement issued by the council.
"The council has to find £30 million in savings this coming year after having already cut £100 million over the last three years," said the statement. "Government has also reduced the funding the council gets while there is more pressure on services, and therefore the budget, from an ever growing population.
" This means the authority is making very hard and challenging decisions about spending on frontline services, such as protecting the most vulnerable and maintaining roads.
"In light of this decision we are preparing to close the sites on Wednesday March 25 so we will be unable to accept any new issues from 12noon on Monday March 2."
The council says Shape Your Place was designed to help Cambridgeshire public services engage with our communities, provide a one stop shop for people to talk to us and a platform for groups and places to promote themselves.
The council statement added: "It has been highly successful with in excess of 246,000 visitors who have made well over half a million visits. However in these austere times we have to focus on what we can and what we cannot continue to deliver."
We would like to thank all our partners, bloggers and those who've used the sites over the last 4 years.
From the end of March residents can raise issues with Cambridgeshire's public services through these links:
One councillor told the general purposes committee that "unlike the council's feedback system, Shape Your Place was very user friendly."