text:
Rethinking the causes of road trauma
by The Conversation | Sep 1, 2017 | The Conversation
Paul Salmon, University of the Sunshine Coast; Adam Hulme, University of the Sunshine Coast; Gemma Read, University of the Sunshine Coast; Jason Thompson, University of Melbourne and Roderick McClure, University of New England
After years of consistent progress, reductions in the road toll are plateauing in many countries. Australia's road fatalities increased by 7.5% in 2016, and the number of fatalities per 100,000 population rose by 6%. This trend appears to be continuing in 2017.
Road trauma is already the ninth leading cause of death worldwide. It is estimated it will be one of the top five killers by 2030.
In efforts to stem road trauma, the global road safety community has promoted what it calls "safe systems" approaches. These cover:
improved road safety management;
safer roads;
safer vehicles;
safer road users; and
improved post-crash response systems.
In Queensland, enforcement and education campaigns aim to prevent the "fatal five" behaviours known to underpin road trauma:
drug and drink driving;
distraction and inattention;
failure to wear a seatbelt;
speeding; and
Assuming some drivers will still engage in these behaviours, efforts also focus on how vehicles, road environments and trauma and rehabilitation services can be modified to reduce the likelihood of death and serious injury in a crash.
This approach has achieved considerable, undeniable success. But it may have reached its limits of effectiveness.
Why isn't this approach working any more?
Fundamentally, the current "safe systems" approach is based on reductionism: that is, the road transport system is artificially isolated from its broader environment and broken into even smaller, discrete parts (such as road users, vehicles and roads).
Attempts are then made to optimise these parts under the assumption that once they are all put back together, the system will naturally perform better.
But complex systems, which are far more than the sum of their parts, do not operate like that. Instead, modified parts interact with other parts in new ways and unexpected emergent behaviours can occur. Factors across the system might also resist change, bringing the modified parts back to their original state, or creating new issues that arise from previous solutions.
Finally, and perhaps most importantly, things extrinsic to the system itself can influence the behaviour of the individual parts.
For most people, driving is simply a means to an end, and something that is affected by the pressures of life and work. There are wider societal issues driving road user behaviour that a traditional road safety approach cannot fix.
For example, take driving under the influence of illicit or prescription drugs, which is an emerging road safety problem.
Drug misuse and addiction are both societal issues that road safety authorities attempt to manage through enforcement and education campaigns. But the current road safety approach does not tackle the underlying issue of drug misuse and addiction. Rather, it simply identifies and removes drug-affected drivers from the road.
This approach is based on causal loop logic, such as that presented below. The diagram suggests a mechanism whereby drug-related crashes and fatalities lead to policy action, which then drives increased enforcement.
The diagram illustrates the belief that identifying drug-affected drivers and removing them from the road will lead to a decrease in the number of drug-affected drivers and related crashes.
But what's important to note in this representation is that nowhere are societal problems of drug misuse and addiction tackled.
Author provided/The Conversation, CC BY-NC
Although drug-affected drivers will continue to be caught and penalised, they are not rehabilitated, and little is done to tackle wider societal issues that contribute to drug misuse and addiction. As such, we can only expect a continued flow of drug-affected drivers onto our roads.
The same applies for other "fatal five" behaviours, which each have societal drivers. For example, increasing levels of alcohol consumption influence drink-driving rates, an increasing desire to remain connected through mobile phones influences distraction and inattention, increasingly time-poor lifestyles lead to speeding, and work pressures lead to fatigued driving.
Even the very requirement to drive a car in the first place is driven by low-density urban form and lack of viable public transport.
The safe-systems view of road safety, which defines the boundaries of the road system as drivers, vehicles and roads, has largely run its course.
A new, systems-thinking-based approach is required that considers the broader societal systems whose effects manifest inside the road system. This requires the breakdown of silos between the fields of public health, workplace safety, urban planning and road safety.
With drug driving, for example, road safety stakeholders should co-ordinate their activities with those tackling drug misuse and addiction.
In the case of prescription drugs, government, the media, drug manufacturers, pharmaceutical companies, doctors, healthcare providers and the police should all be working together through active collaboration.
Prescription rates, drug packaging, alternative pain treatments and rehabilitation should be co-ordinated with modifications to road safety strategy, road rules and regulations, licensing, road user testing, education and enforcement.
This systems-thinking approach is represented below. The earlier causal loop diagram has been modified to show some of the wider influences on, and potential solutions for, drug-driving.
Author provided/The Conversation, CC BY-ND
Encouragingly, there is a groundswell of research that is beginning to apply systems-thinking methods to road safety. Researchers and practitioners are realising the need to look beyond the road transport system and work with those in other areas.
While we should not forget the significant and tangible impact that road safety stakeholders have achieved, it's time to acknowledge that road trauma is a complex problem that cannot be solved by them alone.
Paul Salmon, Professor of Human Factors, University of the Sunshine Coast; Adam Hulme, Research Fellow, University of the Sunshine Coast; Gemma Read, Research Fellow in Human Factors & Sociotechnical Systems, University of the Sunshine Coast; Jason Thompson, Senior Research Fellow, University of Melbourne et Roderick McClure, Head, School of Rural Medicine, University of New England
The original version of this article was published on The Conversation.


text:
Posted on August 29, 2015 by Delaware Gazette
A birthday to remember
Local man's generosity recognized by Donatos' owner
By Dustin Ensinger - densinger@aimmedianetwork.com
Bob Stone fancies himself to be the "Ostrander Agitator," but those that know him say he is a kind-hearted and generous man.
It is that generosity and spirit of giving that led Jane Grote Abell, owner and chairwoman of Donatos Pizza, to surprise Stone on Friday at the downtown Delaware location as he prepared to eat an early birthday lunch with his wife and a family friend.
"I appreciate what you do in the community in helping other people," Grote Abell told Stone.
Stone, who turns 74 today, has been known to purchase cars for family friends in need, help with college tuition and rescue a homeowner in foreclosure.
"It just represented everything we are at Donatos," said Grote Abell, who was informed of Stone's generosity by a family friend who has benefited from his kindness. "It sounds like you guys are guardian angels for some people."
Stone, an entrepreneur himself, is the owner of Environmental Protective Coatings LLC, and a huge fan of Abell Grote.
"He has been a Donatos fan ever since Jane Grote Abell was first seen in their commercials on TV," said his wife of 46 years, Alice. "He thinks she is the best thing that ever came along with pizza."
"Pulling off this surprise is one of the most wonderful things that could happen for him," she added. "I was wondering what I could give him for his birthday, but I think I am giving him the 'ultimate gift.'"
And pull it off she did.
"Shocked," Stone said when asked what his thought were on his lunch with Grote Abell. "Best birthday present ever."
While the surprise went smoothly, Stone's wife nonetheless fretted over it, waking up at 4 a.m. in anticipation.
"I've been a ball of nerves all day," she said.
Stone, as his wife said, refused to take credit for his kindness to others.
His friend, Brian Parish, however, would not let him off the hook that easily.
"He comes off gruff to a lot of people, but he does have a very big heart," he said.
http://aimmedianetwork.com/wp-content/uploads/sites/40/2015/08/web1_DSC_0328.jpg
By Dustin Ensinger
densinger@aimmedianetwork.com
Dustin Ensinger can be reached at 740-413-0902 or on Twitter @EnsingerDG.
Hi! A visitor to our site felt the following article might be of interest to you: A birthday to remember. Here is a link to that story: https://www.delgazette.com/news/2123/a-birthday-to-remember

redpajama_set_name: RedPajamaCommonCrawl


Our rear parking sensors come with fitting for the Portsmouth, Fareham, Gosport, Hayling Island, Southampton and Winchester areas. Our entry system contains 4 in bumper, ultrasonic sensors in gloss black. This option is an excellent choice if you have a dark coloured car.
As you put the car into reverse gear the parking sensor system become active. You will hear two beeps or a long beep to let you know the system is working. Then as you reverse there are clearly 4 different stages of beeps, with the frequency increasing as objects become closer.
Price includes mobile installation in our serviced areas.
Our rear parking sensors fitting service means we supply and install 4 gloss black, in bumper sensors for £249 for Portsmouth, Fareham, Gosport, Hayling Island, Winchester, and generally Southampton to Chichester areas.
It is important that parking sensor fitting is done correctly. There are subtle bumper styling changes between different car/van makes and models. We know the best place to fit your sensors taking into account the shape of the vehicle bumper, how high it sits off the road, and physical bumper obstructions.
Each individual sensor has a 20cm connection. This is a sign of quality, meaning that if a sensors proves to be faulty then that one can be replaced without rewiring the whole system.
Ultrasonic parking sensors work by sending out an ultrasonic pulse. Each sensor also has the ability to read these pulses as they bounce back after hitting objects. The brain then reads these returned signals and outputs the information to either a buzzer or screen.
Generally the beeps become quicker (more persistent) as objects become closer.
Photo of Hovercraft - Portsmouth to Isle of Wight in ten mins.


text:
REACH turns around teen lives by connecting troubled youths with mentors
These days, things are pretty happy around the Ramsey house. But two years ago, the situation was very different.
Back then, Stephanie Ramsey, daughter of Eric and Cindy, was having a rough time in school.
"I failed every class my freshman year because I was suffering with depression and social anxiety," Stephanie says.
Her mom adds, "She was really struggling to fit in and find her place."
The family turned to a program at the school Stephanie attends, Hutchinson High School, called REACH. It meets as an elective class during the school day -- but it's not a class per se.
Referring to Stephanie, REACH's program coordinator, Chad Harlander, says, "There was not a connection being made in what was going on at home and what was going on at school."
"We have young people trying to figure out this world," he adds. "It's tough. These kids needs support."
REACH offers kids help with school work, character building, and family goals.
Another REACH participant, Katlyn Mayer, says, "It's kind of like a home for me. I like to come here and I feel like myself."
The program started in Hutchinson, but it's now in 11 other schools across the state, and many more are asking about it. The day we dropped by, there were visitors from Austin and Otter Tail.
Michelle Olson of Otter Tail Family Services says, "I think that so many kids feel like they don't belong and they need to feel that when they come to school they have a safe place."
REACH has people raising money for the program and scholarships.
One of those fundraisers, Jason Werowinski, says, "You can't buy this off a shelf. This program works because it's home grown."
Just ask Stephanie, who now has a 3.7 GPA, the highest in the Reach program at Hutchinson high.
Asked whether Reach saved her, Stephanie says, "Oh, I'd probably not be in school because at 16 you can drop out and I probably would have."
The REACH program has a great track record for getting kids graduated. Last year most of the 44 kids at Hutchinson who were set to graduate did, and more than half of those kids say they would've dropped out if they didn't have Reach in their lives.
Another big fan is Vikings linebacker Chad Greenway.
"Chad [Harlander] and his REACH program are positively affecting the lives of so many of our Minnesota youth," Greenway says. "I have been lucky enough to host a REACH football camp for five years with Chad, and his dedication to the program is undeniable. All the proceeds of the camp go back to Chad and his program and it is one of my favorite events that we do through our foundation."
"The REACH program is something that every Minnesota school should look into getting because the positive outcomes from unfortunate situations is astounding," Greenway adds.
For more information about REACH, check out the program's website here.
-- Do you have some "Goods" to share with us? We want to cover your positive, heart-warming stories on Fox 9 News at 6. Drop us a line by following us on Facebook and sending us a direct message, or, if you're on Twitter, our handle is @MyFox9. Just tweet at us using the hashtag, #TheGoods.
The Nook plans to donate over $6,000 that was pinned to the ceiling, walls


P.A.M. treatment is particularly helpful for those with very chronic back problems associated with marked rigidity and stiffness of the back.
It has also proved itself to be extremely helpful for those with spinal curvatures (Scoliosis) helping to improve the mobility and markedly reduce the discomfort. In some cases there has even been a reduction in the degree of curvature. It is also extremely useful for those who wish to have periodic maintenance treatment to prevent the development or recurrence of back problems.
The device was invented by mechanical engineer, Robert Taylor, who, in the early 1980's was asked by a doctor friend why it was that the lower back and the lower neck were the regions of the spine most commonly affected in those with back and neck pain.
From Robert's point of view the answer was quite simple. Using the analogy of an aircraft wing Robert pointed out that the strength of the spine comes from it's flexibility and elasticity. Observe an aircraft wing in flight, particularly in turbulence, and you will see it flexing up and down quite dramatically. This means that all the stresses acting on the wing are spread throughout the whole wing. If it were rigid all the stresses would focus on where it meets the fuselage of the plane and the wing would soon break off.
Similarly in a healthy flexible spine the stresses on the spine are spread throughout it's length no part being subjected to undue stress. However over time, due to the various lifting strains, falls, sporting injuries, accidents and work injuries that we experience, our spines progressively lose that flexibility and the stresses become focused in the lower back where the spine joins the pelvis, as well as in the lower neck. These two areas consistently show the greatest susceptibility to wear and tear, degeneration and spinal disc problems.
Now that Robert had so easily identified the problem he was then asked whether he could come up with a solution. This was not so easy but after 14 years of research, including becoming a student of anatomy, neurology and body movement, he came up with Power Assisted Micro-manipulation (P.A.M.).
The advantage of P.A.M. over other techniques used in the treatment of chronic back problems where the spine's flexibility and elasticity have been lost, is the powered handpiece with it's four "bionic fingers" which work steadily but persistently to free up the joint restrictions with much more persistence than even the fittest and strongest practitioner could achieve. Additionally the "bionic fingers" can be made to act like small reflex hammers which can be used to normalise the spines nervous reflex activity. It should be noted that this "Biomechanical Instrument" has been specifically set up to be totally safe even on very old osteoporotic spines.
In SPASM MODE the pistons of the bionic hand move extremely quickly stimulating spinal reflexes so rapidly that reflex activity is "jammed" thus helping to eliminate muscle spasm.
In REFLEX MODE the pistons move at a slower speed but still fairly fast. As the practitioner moves the bionic hand up and down the spine normal spinal reflex activity is restored helping the spine to function in a balanced way again.
In MOBILISATION MODE the pistons move at a much slower speed while the practitioner guides the bionic hand up and down the spine freeing up the movement between the vertebrae. These restrictions in movement between vertebrae may have taken months or even years to develop.
The combination of normalising the spinal column's controlling reflexes plus the freeing up of restricted vertebral movement help restore the spine to a more youthful / functional / pain free state.


text:
Q: How to rewrite this code without using boost? My task is to modify Sergiu Dotenco's Well Equidistributed Long-period Linear (WELL) algorithm code to not use boost (not saying boost is bad, but due to some company's policy i have to remove it).
now, Sergiu's WELL is using boost's mpl library, there are quite some logic behind it. So one way is to read up all those, then naturally i would be able to finish the task. The other way is, replacing bit by bit with some best guess.
I'm on the 2nd way to hope this try-and-error approach would be faster. So far I've successfully replaced boost::mpl::if_ and if_c with std::conditional, but hit error when try to update IsPowerOfTwo and Power2Modulo etc, that's why i'm seeking help there.
Below is the code, how to rewrite it without boost, but only c++17?
/**
    * Conditional expression of type (r & (r - 1)) == 0 which allows to check
    * whether a number @f$r@f$ is of type @f$2^n@f$.
    */
    typedef boost::mpl::equal_to<
        boost::mpl::bitand_<
        boost::mpl::_,
        boost::mpl::minus<boost::mpl::_, boost::mpl::int_<1>
        >
        >,
        boost::mpl::int_<0>
    > IsPowerOfTwo;

    template<class UIntType, UIntType r>
    struct Power2Modulo
    {
        typedef typename boost::mpl::apply<
            IsPowerOfTwo,
            boost::mpl::integral_c<UIntType, r>
        >::type type;

        BOOST_STATIC_ASSERT(type::value);

        template<class T>
        static T calc(T value)
        {
            return value & (r - 1);
        }
    };

If possible, pls give a short example on how to call it? I tried to instantiate IsPowerOfTwo or Power2Modulo in main with
Detail::IsPowerOfTwo p0;

or
Detail::Power2Modulo<int, 3> p1;

but got compilation error.
I asked a relevant question before and got some suggestion. However, not familiar to metaprogramming and boost, I don't quite get it.

A: Using C++17, this code becomes way simpler and error messages are friendlier on the eye.
This is a sample implementation of Power2Modulo:
#include <type_traits>

template<class UIntType, UIntType r>
struct Power2Modulo
{
  static_assert(std::is_unsigned_v<UIntType>);
  static_assert((r & (r - 1)) == 0,
     "The second parameter of this struct is required to be a power of 2");

  template<class T>
  [[nodiscard]] static constexpr T calc(T value)
  {
    return value & (r - 1);
  }
};

You can use it like this:
int main()
{
  /* This code fails to compile with friendly error message
  Power2Modulo<unsigned, 12> x;
  */

  // Using the static function
  using Mod16 = Power2Modulo<unsigned, 16>;
  static_assert(Mod16::calc(15) == 15);
  static_assert(Mod16::calc(16) == 0);
  static_assert(Mod16::calc(17) == 1);

  // Using it like a member function
  Power2Modulo<unsigned, 4> mod4;
  static_assert(mod4.calc(15) == 3);
  static_assert(mod4.calc(16) == 0);
  static_assert(mod4.calc(17) == 1);
}

Tested with clang-6 and gcc-8 and VisualC++ (via http://webcompiler.cloudapp.net/).

A: So, I looked at that library, and created a no-boost fork adapting the WELL pseudo-random-number-generator to pure c++11.
See here on my github: https://github.com/sehe/well-random (the default branch is no-boost).

What is well-random?
well-random is a c++11 fork from
  random, a collection of various
  pseudo-random number generators and distributions that were intended
  to accompany the Boost Random Number Library.
This fork currently only adopted the WELL generator and its tests.
Getting started
The no-boost branch no longer requires any boost library. Instead it
  requires c++11. To compile the tests make sure first CMake 2.8 is
  installed, then enter :
$ cmake . -DCMAKE_BUILD_TYPE=Release

in your terminal or command prompt on Windows inside project's
  directory to generate the appropriate configuration that can be used
  to compile the tests using make/nmake or inside an IDE.

What Was Refactored

*

*BOOST_STATIC_ASSERT to STATIC_ASSERT (this becomes obsolete with c++17: http://en.cppreference.com/w/cpp/language/static_assert)

*BOOST_STATIC_CONSTANT to static constexpr

*BOOST_PREVENT_MACRO_SUBSTITUTION -> PREVENT_MACRO_SUBSTITUTION (trivial macro)

*BOOST_THROW_EXCEPTION dropped. NOTE This implies the code cannot be compiled with exception support disabled.

*All things related to Boost Test

*

*BOOST_CHECK -> CHECK
#define MESSAGE_PREAMBLE() (std::cerr << __FILE__ << ":" << __LINE__ << " ")

#define CHECK(test) do { if (!(test)) MESSAGE_PREAMBLE() << #test << "\n"; } while (0)

*BOOST_CHECK_EQUAL -> CHECK_EQUAL
#define CHECK_EQUAL(expected,actual) do { \
    auto&& _e = expected; \
    auto&& _a = actual; \
    if (_e != _a) \
        MESSAGE_PREAMBLE() << "expected:" << #expected << " = " << _e << "\n" \
                  << "\tactual:" << #actual << " = " << _a << "\n"; \
} while (0)

*BOOST_AUTO_TEST_CASE - dropped. The test driver is main now:
int main() {
    //CHECK_EQUAL(16, Detail::shift<2>(64));
    //CHECK_EQUAL(64, Detail::shift<-2>(16));
    //CHECK_EQUAL(32, Detail::shift<0>(32));
    //CHECK(Detail::is_powerof2(512u));
    //CHECK(not Detail::is_powerof2(0u));

    WellTestCase<Well512a,   0x2b3fe99e>::run();
    WellTestCase<Well521a,   0xc9878363>::run();
    WellTestCase<Well521b,   0xb75867f6>::run();
    WellTestCase<Well607a,   0x7b5043ea>::run();
    WellTestCase<Well607b,   0xaedee7da>::run();
    WellTestCase<Well800a,   0x2bfe686f>::run();
    WellTestCase<Well800b,   0xf009e1bd>::run();
    WellTestCase<Well1024a,  0xd07f528c>::run();
    WellTestCase<Well1024b,  0x867f7993>::run();
    WellTestCase<Well19937a, 0xb33a2cd5>::run();
    WellTestCase<Well19937b, 0x191de86a>::run();
    WellTestCase<Well19937c, 0x243eaed5>::run();
    WellTestCase<Well21701a, 0x7365a269>::run();
    WellTestCase<Well23209a, 0x807dacb >::run();
    WellTestCase<Well23209b, 0xf1a77751>::run();
    WellTestCase<Well44497a, 0xfdd7c07b>::run();
    WellTestCase<Well44497b, 0x9406547b>::run();
}

*boost::ref -> std::ref (from <functional>)

*Boost Range helpers replaced by standard c++ (boost::size, boost::end for arrays)

*using ulong_long_type = unsigned long long;

*Conditional operators shift and mod have been re-implemented with straight-up SFINAE based on std::enable_if instead of using MPL meta-programming:
template<class UIntType, unsigned N>
struct Left
{
    static UIntType shift(UIntType a)
    {
        return a << N;
    }
};

template<class UIntType, unsigned N>
struct Right
{
    static UIntType shift(UIntType a)
    {
        return a >> N;
    }
};

template<int N, class UIntType>
inline UIntType shift(UIntType a)
{
    return boost::mpl::if_c<(N < 0),
                Left<UIntType, -N>,
                Right<UIntType, N>
            >::type::shift(a);
}

became:
template <typename UIntType, signed N, typename Enable = void> struct Shift;

template <typename UIntType, signed N>
    struct Shift<UIntType, N, typename std::enable_if<(N>=0)>::type> {
        static UIntType apply(UIntType a) { return a >> N; }
    };

template <typename UIntType, signed N>
    struct Shift<UIntType, N, typename std::enable_if<(N<0)>::type> {
        static UIntType apply(UIntType a) { return a << -N; }
    };

template<int N, class UIntType>
inline UIntType shift(UIntType a) { return Shift<UIntType, N>::apply(a); }

*Likewise, the Modulo switch (Power2Modulo and GenericModulo) that looked like this:
/**
 * Conditional expression of type (r & (r - 1)) == 0 which allows to check
 * whether a number @f$r@f$ is of type @f$2^n@f$.
 */
typedef boost::mpl::equal_to<
            boost::mpl::bitand_<
                boost::mpl::_,
                boost::mpl::minus<boost::mpl::_, boost::mpl::int_<1>
            >
        >,
        boost::mpl::int_<0>
    > IsPowerOfTwo;

template<class UIntType, UIntType r>
struct Power2Modulo
{
    typedef typename boost::mpl::apply<
            IsPowerOfTwo,
            boost::mpl::integral_c<UIntType, r>
        >::type type;

    BOOST_STATIC_ASSERT(type::value);

    template<class T>
    static T calc(T value)
    {
        return value & (r - 1);
    }
};

template<class UIntType, UIntType r>
struct GenericModulo
{
    /**
     * @brief Determines @a value modulo @a r.
     *
     * @pre value >= 0 and value < 2 * r
     * @post value >= 0 and value < r
     */
    template<class T>
    static T calc(T value)
    {
        BOOST_STATIC_ASSERT(!std::numeric_limits<UIntType>::is_signed);
        assert(value < 2 * r);

        if (value >= r)
            value -= r;

        return value;
    }
};

template<class UIntType, UIntType r>
struct Modulo
{
    typedef typename boost::mpl::apply<
            IsPowerOfTwo,
            boost::mpl::integral_c<UIntType, r>
        >::type rIsPowerOfTwo;

    static UIntType calc(UIntType value)
    {
        // Use the bitwise AND for power 2 modulo arithmetic, or subtraction
        // otherwise. Subtraction is about two times faster than direct modulo
        // calculation.
        return boost::mpl::if_<
                    rIsPowerOfTwo,
                        Power2Modulo<UIntType, r>,
                        GenericModulo<UIntType, r>
                >::type::calc(value);
    }
};

became much simpler with a little bit of c++11 (constexpr!) goodness:
template <typename T, typename = typename std::enable_if<!std::is_signed<T>()>::type>
constexpr static bool is_powerof2(T v) { return v && ((v & (v - 1)) == 0); }

template<class UIntType, UIntType r>
struct Modulo {
    template<class T> static T calc(T value) { return calc(value, std::integral_constant<bool, is_powerof2(r)>{}); }
    /**
     * @brief Determines @a value modulo @a r.
     *
     * @pre value >= 0 and value < 2 * r
     * @post value >= 0 and value < r
     */
    template<class T> static T calc(T value, std::true_type) { return value & (r - 1); }
    template<class T> static T calc(T value, std::false_type) {
        STATIC_ASSERT(!std::numeric_limits<UIntType>::is_signed);
        assert(value < 2 * r);

        if (value >= r)
            value -= r;

        return value;
    }
};

*<boost/cstdint.hpp> -> <cstdint> (replacing ::boost by ::std for uint_least32_t and uint32_t)

*Well_quoted type function replaced by an alias template (template<...> using T = ... see http://en.cppreference.com/w/cpp/language/type_alias ad 2)

*typedefs rewritten as type aliases.
Full Listing
Live On Coliru
// Copyright (c) Sergiu Dotenco 2010, 2011, 2012
// Copyright (c) Seth Heeren - made independent of BOOST using C++11 - 2017
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

/**
 * @brief Implementation of the Well Equidistributed Long-period Linear (WELL)
 *        pseudo-random number generator.
 * @file well.hpp
 */

#ifndef WELL_HPP
#define WELL_HPP

#include <algorithm>
#include <cassert>
#include <cstddef>
#include <iomanip>
#include <istream>
#include <limits>
#include <ostream>
#include <functional>
#include <stdexcept>

#define STATIC_ASSERT(x) static_assert(x, #x)
#define PREVENT_MACRO_SUBSTITUTION

//! @cond hide_private

namespace Detail {
    using ulong_long_type = unsigned long long;

    template <typename UIntType, signed N, typename Enable = void> struct Shift;

    template <typename UIntType, signed N>
        struct Shift<UIntType, N, typename std::enable_if<(N>=0)>::type> {
            static UIntType apply(UIntType a) { return a >> N; }
        };

    template <typename UIntType, signed N>
        struct Shift<UIntType, N, typename std::enable_if<(N<0)>::type> {
            static UIntType apply(UIntType a) { return a << -N; }
        };

    template<int N, class UIntType>
    inline UIntType shift(UIntType a) {
        return Shift<UIntType, N>::apply(a);
    }

/**
 * @name Transformation matrices @f$M0,\dotsc,M6@f$ from Table I
 * @{
 */

struct M0
{
    template<class T>
    static T transform(T)
    {
        return T(0);
    }
};

struct M1
{
    template<class T>
    static T transform(T x)
    {
        return x;
    }
};

template<int N>
struct M2
{
    template<class T>
    static T transform(T x)
    {
        return shift<N>(x);
    }
};

template<int N>
struct M3
{
    template<class T>
    static T transform(T x)
    {
        return x ^ shift<N>(x);
    }
};

template<std::uint_least32_t a>
struct M4
{
    template<class T>
    static T transform(T x)
    {
        T result = x >> 1;

        if ((x & 1) == 1)
            result ^= a;

        return result;
    }
};

template<int N, std::uint_least32_t b>
struct M5
{
    template<class T>
    static T transform(T x)
    {
        return x ^ (shift<N>(x) & b);
    }
};

template
<
    std::size_t w,
    std::uint_least32_t q,
    std::uint_least32_t a,
    std::uint_least32_t ds,
    std::uint_least32_t dt
>
struct M6
{
    template<class T>
    static T transform(T x)
    {
        T result = ((x << q) ^ (x >> (w - q))) & ds;

        if ((x & dt) != 0)
            result ^= a;

        return result;
    }
};

//! @}

template <typename T, typename = typename std::enable_if<!std::is_signed<T>()>::type>
constexpr static bool is_powerof2(T v) { return v && ((v & (v - 1)) == 0); }

template<class UIntType, UIntType r>
struct Modulo {
    template<class T> static T calc(T value) { return calc(value, std::integral_constant<bool, is_powerof2(r)>{}); }
    /**
     * @brief Determines @a value modulo @a r.
     *
     * @pre value >= 0 and value < 2 * r
     * @post value >= 0 and value < r
     */
    template<class T> static T calc(T value, std::true_type) { return value & (r - 1); }
    template<class T> static T calc(T value, std::false_type) {
        STATIC_ASSERT(!std::numeric_limits<UIntType>::is_signed);
        assert(value < 2 * r);

        if (value >= r)
            value -= r;

        return value;
    }
};

template<std::uint_least32_t b, std::uint_least32_t c>
struct MatsumotoKuritaTempering
{
    template<std::size_t r, class UIntType, std::size_t N>
    static UIntType apply(UIntType x, UIntType (&)[N], std::size_t)
    {
        x ^= (x << 7) & b;
        x ^= (x << 15) & c;

        return x;
    }
};

template<std::uint_least32_t mask>
struct HaraseTempering
{
    template<std::size_t r, class UIntType, std::size_t N>
    static UIntType apply(UIntType x, UIntType (&s)[N], std::size_t m2)
    {
        return x ^ (s[Modulo<UIntType, r>::calc(m2 + 1)] & mask);
    }
};

struct NoTempering
{
    template<std::size_t r, class UIntType, std::size_t N>
    static UIntType apply(UIntType x, UIntType (&)[N], std::size_t)
    {
        return x;
    }
};

} // namespace Detail

//! @endcond

/**
 * @brief Well Equidistributed Long-period Linear (WELL) pseudo-random number
 *        generator.
 *
 * The implementation is based on the "Improved Long-Period Generators Based on
 * Linear Recurrences Modulo 2" paper by Francois Panneton, Pierre L'Ecuyer and
 * Makoto Matsumoto from ACM Transactions on Mathematical Software, 32 (1,
 * March) 2006, pp. 1-16.
 *
 * @tparam UIntType The unsigned integer type.
 * @tparam w Word size.
 * @tparam r State size.
 */
template
<
    class UIntType,
    std::size_t w,
    std::size_t r,
    std::size_t p,
    std::size_t m1,
    std::size_t m2,
    std::size_t m3,
    class T0,
    class T1,
    class T2,
    class T3,
    class T4,
    class T5,
    class T6,
    class T7,
    class Tempering // mpl pluggable
>
class Well
{
    STATIC_ASSERT(!std::numeric_limits<UIntType>::is_signed);
    STATIC_ASSERT(w <= static_cast<std::size_t>(std::numeric_limits<UIntType>::digits));
    STATIC_ASSERT(r > 0 && p < w);
    STATIC_ASSERT(m1 > 0 && m1 < r);
    STATIC_ASSERT(m2 > 0 && m2 < r);
    STATIC_ASSERT(m3 > 0 && m3 < r);

public:
    //! The unsigned integer type.
    typedef UIntType result_type;

    //! Word size.
    static constexpr std::size_t word_size = w;
    //! State size.
    static constexpr std::size_t state_size = r;
    //! Number of mask bits.
    static constexpr std::size_t mask_bits = p;
    //! Default seed value.
    static constexpr UIntType default_seed = 5489U;

    /**
     * @brief Initializes the class using the specified seed @a value.
     *
     * @param value The seed value to be used for state initialization.
     */
    explicit Well(result_type value = default_seed)
    {
        seed(value);
    }

    template<class InputIterator>
    Well(InputIterator& first, InputIterator last)
    {
        seed(first, last);
    }

    template<class Generator>
    explicit Well(Generator& g)
    {
        seed(g);
    }

    template<class Generator>
    void seed(Generator& g)
    {
        // Ensure std::generate_n doesn't copy the generator g by using
        // std::reference_wrapper
        std::generate_n(state_, state_size, std::ref(g));
    }

    void seed(result_type value = default_seed)
    {
        if (value == 0U)
            value = default_seed;

        state_[0] = value;

        std::size_t i = 1;
        UIntType *const s = state_;

        // Same generator used to seed Mersenne twister
        for ( ; i != state_size; ++i)
            s[i] = (1812433253U * (s[i - 1] ^ (s[i - 1] >> (w - 2))) + i);

        index_ = i;
    }

    template<class InputIterator>
    void seed(InputIterator& first, InputIterator last)
    {
        index_ = 0;
        std::size_t i = 0;

        for ( ; i != state_size && first != last; ++i, ++first)
            state_[i] = *first;

        if (first == last && i != state_size)
            throw std::invalid_argument("Seed sequence too short");
    }

    /**
     * @brief Generates a random number.
     */
    result_type operator()()
    {
        const UIntType upper_mask = ~0U << p;
        const UIntType lower_mask = ~upper_mask;

        // v[i,j] = state[(r-i+j) mod r]
        std::size_t i = index_;
        // Equivalent to r-i but allows to avoid negative values in the
        // following two expressions
        std::size_t j = i + r;
        std::size_t k = mod(j - 1); // [i,r-1]
        std::size_t l = mod(j - 2); // [i,r-2]

        std::size_t im1 = i + m1;
        std::size_t im2 = i + m2;
        std::size_t im3 = i + m3;

        UIntType z0, z1, z2, z3, z4;

        z0 = (state_[k] & upper_mask) | (state_[l] & lower_mask);
        z1 = T0::transform(state_[i]) ^
             T1::transform(state(im1));
        z2 = T2::transform(state(im2)) ^
             T3::transform(state(im3));
        z3 = z1 ^ z2;
        z4 = T4::transform(z0) ^ T5::transform(z1) ^
             T6::transform(z2) ^ T7::transform(z3);

        state_[i] = z3; // v[i+1,1]
        state_[k] = z4; // v[i+1,0]

        index_ = k;

        return Tempering::template apply<r>(z4, state_, im2);
    }

    result_type min PREVENT_MACRO_SUBSTITUTION () const
    {
        return 0U;
    }

    result_type max PREVENT_MACRO_SUBSTITUTION () const
    {
        return ~0U >> (std::numeric_limits<UIntType>::digits - w);
    }

    void discard(Detail::ulong_long_type z)
    {
        while (z-- > 0) {
            operator()();
        }
    }

    /**
     * @brief Compares the state of two generators for equality.
     */
    friend bool operator==(const Well& lhs, const Well& rhs)
    {
        for (std::size_t i = 0; i != state_size; ++i)
            if (lhs.compute(i) != rhs.compute(i))
                return false;

        return true;
    }

    /**
     * @brief Compares the state of two generators for inequality.
     */
    friend bool operator!=(const Well& lhs, const Well& rhs)
    {
        return !(lhs == rhs);
    }

    /**
     * @brief Writes the state to the specified stream.
     */
    template<class E, class T>
    friend std::basic_ostream<E, T>&
        operator<<(std::basic_ostream<E, T>& out, const Well& well)
    {
        E space = out.widen(' ');

        for (std::size_t i = 0; i != state_size; ++i)
            out << well.compute(i) << space;

        return out;
    }

    /**
     * @brief Reads the generator state from the specified input stream.
     */
    template<class E, class T>
    friend std::basic_istream<E, T>&
        operator>>(std::basic_istream<E, T>& in, Well& well)
    {
        for (std::size_t i = 0; i != state_size; ++i)
            in >> well.state_[i] >> std::ws;

        well.index_ = state_size;

        return in;
    }

private:
    template<class T>
    static T mod(T value)
    {
        return Detail::Modulo<T, r>::calc(value);
    }

    UIntType state(std::size_t index) const
    {
        return state_[mod(index)];
    }

    UIntType compute(std::size_t index) const
    {
        return state_[(index_ + index + r) % r];
    }

    UIntType state_[r];
    std::size_t index_;
};

namespace Detail {
    /**
     * @name Base definitions with pluggable tempering method
     * @{
     */

    template <typename Tempering>
    using Well512a_base = Well<
        std::uint32_t, 32, 16, 0, 13, 9, 5, M3<-16>, M3<-15>, M3<11>, M0, M3<-2>, M3<-18>, M2<-28>,
        M5<-5, 0xda442d24>, Tempering>;

    template <typename Tempering>
    using Well521a_base = Well<
        std::uint32_t, 32, 17, 23, 13, 11, 10, M3<-13>, M3<-15>, M1, M2<-21>,
        M3<-13>, M2<1>, M0, M3<11>, Tempering>;

    template <typename Tempering>
    using Well521b_base = Well<
        std::uint32_t, 32, 17, 23, 11, 10, 7, M3<-21>, M3<6>, M0, M3<-13>, M3<13>,
        M2<-10>, M2<-5>, M3<13>, Tempering>;

    template <typename Tempering>
    using Well607a_base = Well<
        std::uint32_t, 32, 19, 1, 16, 15, 14, M3<19>, M3<11>, M3<-14>, M1, M3<18>,
        M1, M0, M3<-5>, Tempering>;

    template <typename Tempering>
    using Well607b_base = Well<
        std::uint32_t, 32, 19, 1, 16, 18, 13, M3<-18>, M3<-14>, M0, M3<18>,
        M3<-24>, M3<5>, M3<-1>, M0, Tempering>;

    template <typename Tempering>
    using Well800a_base = Well<
        std::uint32_t, 32, 25, 0, 14, 18, 17, M1, M3<-15>, M3<10>, M3<-11>, M3<16>,
        M2<20>, M1, M3<-28>, Tempering>;

    template <typename Tempering>
    using Well800b_base = Well<
        std::uint32_t, 32, 25, 0, 9, 4, 22, M3<-29>, M2<-14>, M1, M2<19>, M1,
        M3<10>, M4<0xd3e43ffd>, M3<-25>, Tempering>;

    template <typename Tempering>
    using Well1024a_base = Well<
        std::uint32_t, 32, 32, 0, 3, 24, 10, M1, M3<8>, M3<-19>, M3<-14>, M3<-11>,
        M3<-7>, M3<-13>, M0, Tempering>;

    template <typename Tempering>
    using Well1024b_base = Well<
        std::uint32_t, 32, 32, 0, 22, 25, 26, M3<-21>, M3<17>, M4<0x8bdcb91e>,
        M3<15>, M3<-14>, M3<-21>, M1, M0, Tempering>;

    template <typename Tempering>
    using Well19937a_base = Well<
        std::uint32_t, 32, 624, 31, 70, 179, 449, M3<-25>, M3<27>, M2<9>, M3<1>,
        M1, M3<-9>, M3<-21>, M3<21>, Tempering>;

    template <typename Tempering>
    using Well19937b_base = Well<
        std::uint32_t, 32, 624, 31, 203, 613, 123, M3<7>, M1, M3<12>, M3<-10>,
        M3<-19>, M2<-11>, M3<4>, M3<-10>, Tempering>;

    template <typename Tempering>
    using Well21701a_base = Well<
        std::uint32_t, 32, 679, 27, 151, 327, 84, M1, M3<-26>, M3<19>, M0, M3<27>,
        M3<-11>, M6<32, 15, 0x86a9d87e, 0xffffffef, 0x00200000>, M3<-16>,
        Tempering>;

    template <typename Tempering>
    using Well23209a_base = Well<
        std::uint32_t, 32, 726, 23, 667, 43, 462, M3<28>, M1, M3<18>, M3<3>,
        M3<21>, M3<-17>, M3<-28>, M3<-1>, Tempering>;

    template <typename Tempering>
    using Well23209b_base = Well<
        std::uint32_t, 32, 726, 23, 610, 175, 662, M4<0xa8c296d1>, M1, M6<32, 15,
        0x5d6b45cc, 0xfffeffff, 0x00000002>, M3<-24>, M3<-26>, M1, M0, M3<16>,
        Tempering>;

    template <typename Tempering>
    using Well44497a_base = Well<
        std::uint32_t, 32, 1391, 15, 23, 481, 229, M3<-24>, M3<30>, M3<-10>,
        M2<-26>, M1, M3<20>, M6<32, 9, 0xb729fcec, 0xfbffffff, 0x00020000>, M1, Tempering>;
    //! @}

} // namespace Detail

using Well512a   = Detail::Well512a_base<Detail::NoTempering>;
using Well521a   = Detail::Well521a_base<Detail::NoTempering>;
using Well521b   = Detail::Well521b_base<Detail::NoTempering>;
using Well607a   = Detail::Well607a_base<Detail::NoTempering>;
using Well607b   = Detail::Well607b_base<Detail::NoTempering>;
using Well800a   = Detail::Well800a_base<Detail::NoTempering>;
using Well800b   = Detail::Well800b_base<Detail::NoTempering>;
using Well1024a  = Detail::Well1024a_base<Detail::NoTempering>;
using Well1024b  = Detail::Well1024b_base<Detail::NoTempering>;
using Well19937a = Detail::Well19937a_base<Detail::NoTempering>;
using Well19937b = Detail::Well19937b_base<Detail::NoTempering>;
using Well19937c = Detail::Well19937a_base<Detail::MatsumotoKuritaTempering<0xe46e1700, 0x9b868000>>;
using Well21701a = Detail::Well21701a_base<Detail::NoTempering>;
using Well23209a = Detail::Well23209a_base<Detail::NoTempering>;
using Well23209b = Detail::Well23209b_base<Detail::NoTempering>;
using Well44497a = Detail::Well44497a_base<Detail::NoTempering>;
using Well44497b = Detail::Well44497a_base<Detail::MatsumotoKuritaTempering<0x93dd1400, 0xfa118000>>;

/**
 * @name Maximally equidistributed versions using Harase's tempering method
 * @{
 */
using Well800a_ME   = Detail::Well800a_base<Detail::HaraseTempering<0x4880>>;
using Well800b_ME   = Detail::Well800b_base<Detail::HaraseTempering<0x17030806>>;
using Well19937a_ME = Detail::Well19937a_base<Detail::HaraseTempering<0x4118000>>;
using Well19937b_ME = Detail::Well19937b_base<Detail::HaraseTempering<0x30200010>>;
using Well21701a_ME = Detail::Well21701a_base<Detail::HaraseTempering<0x1002>>;
using Well23209a_ME = Detail::Well23209a_base<Detail::HaraseTempering<0x5100000>>;
using Well23209b_ME = Detail::Well23209b_base<Detail::HaraseTempering<0x34000300>>;
using Well44497a_ME = Detail::Well44497a_base<Detail::HaraseTempering<0x48000000>>;
//! @}

#endif // WELL_HPP

// Copyright (c) Sergiu Dotenco 2010
// Copyright (c) Seth Heeren - made independent of BOOST using C++11 - 2017
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

/**
 * @brief WELL PRNG implementation unit test.
 * @file welltest.cpp
 */

#include <algorithm>
#include <memory>
#include <iostream>

// #include "well.hpp"

#define MESSAGE_PREAMBLE() (std::cerr << __FILE__ << ":" << __LINE__ << " ")

#define CHECK_EQUAL(expected,actual) do { \
    auto&& _e = expected; \
    auto&& _a = actual; \
    if (_e != _a) \
        MESSAGE_PREAMBLE() << "expected:" << #expected << " = " << _e << "\n" \
                  << "\tactual:" << #actual << " = " << _a << "\n"; \
} while (0)

#define CHECK(test) do { if (!(test)) MESSAGE_PREAMBLE() << #test << "\n"; } while (0)

/**
 * @brief Generic WELL test case.
 *
 * The test case performs the following checks:
 * -# The last generated value is equal to the value generate by the reference
 *    implementation after @f$10^9@f$ iterations. The generator is seeded using
 *    an array filled with 1s.
 * -# The @c min and @c max methods of the @ref Well generator return 0 and
 *    @f$2^{32}-1@f$ respectively.
 *
 * @tparam RandomNumberGenerator WELL PRNG implementation type.
 * @tparam Expected The expected result after @f$10^9@f$ iterations.
 */
template
<
    class RandomNumberGenerator,
    typename RandomNumberGenerator::result_type Expected
>
class WellTestCase
{
    RandomNumberGenerator rng;

    typedef typename RandomNumberGenerator::result_type result_type;

    result_type generate()
    {
        unsigned state[RandomNumberGenerator::state_size];
        std::uninitialized_fill_n(state, RandomNumberGenerator::state_size, 1);

        unsigned* p = state;
        rng.seed(p, p + RandomNumberGenerator::state_size);

        result_type x = 0;

        int iterations = 1000000000;

        while (iterations-- > 0)
            x = rng();

        return x;
    }

public:
    static void run()
    {
        WellTestCase c;

        CHECK_EQUAL(c.generate(), Expected);
        CHECK_EQUAL(c.rng.min(), 0U);
        CHECK_EQUAL(c.rng.max(), ~0U);
        CHECK_EQUAL(c.rng, c.rng);
        CHECK(c.rng == c.rng);
    }
};

/**
 * @brief Defines the actual test case.
 *
 * @param name The name of the test case.
 * @param type WELL pseudo-random generator type.
 * @param expected The expected result after @f$10^9@f$ iterations.
 *
 * @hideinitializer
 */
int main() {
    CHECK_EQUAL(16, Detail::shift<2>(64));
    CHECK_EQUAL(64, Detail::shift<-2>(16));
    CHECK_EQUAL(32, Detail::shift<0>(32));
    CHECK(Detail::is_powerof2(512u));
    CHECK(not Detail::is_powerof2(0u));

    WellTestCase<Well512a,   0x2b3fe99e>::run();

#ifndef COLIRU // stay in execution time limits
    WellTestCase<Well521a,   0xc9878363>::run();
    WellTestCase<Well521b,   0xb75867f6>::run();
    WellTestCase<Well607a,   0x7b5043ea>::run();
    WellTestCase<Well607b,   0xaedee7da>::run();
    WellTestCase<Well800a,   0x2bfe686f>::run();
    WellTestCase<Well800b,   0xf009e1bd>::run();
    WellTestCase<Well1024a,  0xd07f528c>::run();
    WellTestCase<Well1024b,  0x867f7993>::run();
    WellTestCase<Well19937a, 0xb33a2cd5>::run();
    WellTestCase<Well19937b, 0x191de86a>::run();
    WellTestCase<Well19937c, 0x243eaed5>::run();
    WellTestCase<Well21701a, 0x7365a269>::run();
    WellTestCase<Well23209a, 0x807dacb >::run();
    WellTestCase<Well23209b, 0xf1a77751>::run();
    WellTestCase<Well44497a, 0xfdd7c07b>::run();
    WellTestCase<Well44497b, 0x9406547b>::run();
#endif
}

redpajama_set_name: RedPajamaStackExchange


Flexcon's nestable pallet design offers space savings when not in use, where space savings is a priority. Available in Open and Closed Deck Styles, nestable pallets offer lower overall freight costs as they take up much less space in trailers when returned empty (nested). Easily accommodated with virtually every type of material handling devices like Hand Pallet Jacks, Forklifts, Electric Pallet Jacks, etc.
Nestable plastic pallets can also help you to save money while still protecting your products. Having the ability to neatly stack the empty pallets in smaller spaces gives you more space for other aspects of your facility. Whether you need ten or ten thousand, nestable pallets from Flexcontainer can help you to maximize the space that you have available for storage by providing a 100 percent space maximizing aspect.
Contact us today to purchase nestable plastic pallets.


text:
Q: Persistent storage: How to mount a directory in Kubernetes? I understand that in Kubernetes you don't want to "tie" a pod to a host, but in certain cases you might need to.
In my particular case I have a DB that lives on blockstorage which is mounted to a specific host.
What I am trying to accomplish with Kubernetes is the equivalent of a bind-mount in Docker. I want to specify the directory on the host that I need mounted in the pod, similar to this:
/mnt/BTC_2:/root/.bitcoin:rw

How do I specify the location of where I want my persistent storage to be on the node/host? Would this be a hostPath volume like the following:
    volumeMounts:
    - mountPath: /root/.bitcoin
      name: test-volume
  volumes:
  - name: test-volume
    hostPath:
      # directory location on host
      path: /mnt/BTC_2

A:
I want to specify the directory on the host that I need mounted in the pod

That should be documented here

A hostPath volume mounts a file or directory from the host node's filesystem into your pod. This is not something that most Pods will need, but it offers a powerful escape hatch for some applications.

Warning:

The files or directories created on the underlying hosts are only writable by root. You either need to run your process as root in a privileged container or modify the file permissions on the host to be able to write to a hostPath volume

  volumes:
  - name: test-volume
    hostPath:
      # directory location on host
      path: /data
      # this field is optional
      type: Directory


text:
Emmy nominations for 'Sherlock', 'Downton Abbey' and 'Luther'
Posted July 19, 2012 by CultBox Filed under
The perfect birthday present for Benedict Cumberbatch, the actor and his Sherlock co-star Martin Freeman received acting nods – Best Lead and Best Supporting Actor In A Miniseries Or A Movie, respectively — pitting Cumberbatch against fellow BBC leading man Idris Elba.
Elba is no stranger to the Emmys, having received one nod each for Luther and another for starring as Laura Linney's lover on The Big C last year. He goes head-to-head with Cumberbatch this year with his Lead Actor nomination, while Luther competes directly with Sherlock for Outstanding Made for TV Movie/Miniseries.
Ben Stephenson, BBC Controller of Drama Commissioning, commented: "It's a testament to the quality and breadth of BBC drama that six different titles – Sherlock, Luther, Page Eight, Great Expectations, Song of Lunch and The Hour – have received twenty six prestigious Emmy nominations between them this year."
Hosted by Jimmy Kimmel, the 64th Primetime Emmy Awards will take place on Sunday 23rd September at the Nokia Theatre in Los Angeles.
The full nominations are as follows:
Outstanding Comedy Series
Outstanding Drama Series
Outstanding Miniseries or Movie
Game Change
Hatfield & McCoys
Outstanding Lead Actor in a Comedy Series
Alec Baldwin, 30 Rock
Don Cheadle, House of Lies
Louis CK, Louie
Jon Cryer, Two and a Half Men
Larry David, Curb Your Enthusiasm
Jim Parsons, The Big Bang Theory
Outstanding Lead Actress in a Comedy Series
Zooey Deschanel, New Girl
Lena Dunham, Girls
Edie Falco, Nurse Jackie
Tina Fey, 30 Rock
Julia Louis-Dreyfus, Veep
Melissa McCarthy, Mike & Molly
Amy Poehler, Parks and Recreation
Outstanding Supporting Actor in a Comedy Series
Bill Hader, Saturday Night Live
Ty Burrell, Modern Family
Jesse Tyler Ferguson, Modern Family
Max Greenfield, New Girl
Ed O'Neill, Modern Family
Eric Stonestreet, Modern Family
Outstanding Supporting Actress in a Comedy Series
Mayim Bialik, The Big Bang Theory
Julie Bowen, Modern Family
Kathryn Joosten, Desperate Housewives
Sofia Vergara, Modern Family
Merrit Wever, Nurse Jackie
Kristen Wiig, Saturday Night Live
Outstanding Lead Actor in a Drama Series
Hugh Bonneville, Downton Abbey
Steve Buscemi, Boardwalk Empire
Bryan Cranston, Breaking Bad
Michael C Hall, Dexter
Jon Hamm, Mad Men
Damian Lewis, Homeland
Outstanding Lead Actress in a Drama Series
Kathy Bates, Harry's Law
Glenn Close, Damages
Claire Danes, Homeland
Michelle Dockery, Downton Abbey
Julianna Margulies, The Good Wife
Elisabeth Moss, Mad Men
Outstanding Supporting Actor in a Drama Series
Jim Carter, Downton Abbey
Brendan Coyle, Downton Abbey
Peter Dinklage, Game of Thrones
Giancarlo Esposito, Breaking Bad
Jared Harris, Mad Men
Aaron Paul, Breaking Bad
Outstanding Supporting Actress in a Drama Series
Christine Baranski, The Good Wife
Joanne Froggatt, Downton Abbey
Anna Gunn, Breaking Bad
Christina Hendricks, Mad Men
Archie Panjabi, The Good Wife
Maggie Smith, Downton Abbey
Outstanding Lead Actor in a Miniseries or Movie
Kevin Costner, Hatfields & McCoys
Benedict Cumberbatch, Sherlock
Idris Elba, Luther
Woody Harrelson, Game Change
Clive Owen, Hemingway & Gellhorn
Bill Paxton, Hatfields & McCoys
Outstanding Lead Actress in a Miniseries or Movie
Connie Britton, American Horror Story
Ashley Judd, Missing
Nicole Kidman, Hemingway & Gellhorn
Julianne Moore, Game Change
Emma Thompson, The Song of Lunch
Outstanding Supporting Actor in a Miniseries or Movie
Tom Berenger, Hatfields & McCoys
Martin Freeman, Sherlock
Ed Harris, Game Change
Denis O'Hare, American Horror Story
David Strathairn, Hemingway & Gellhorn
Outstanding Supporting Actress in a Miniseries or Movie
Frances Conroy, American Horror Story
Judy Davis, Page Eight
Jessica Lange, American Horror Story
Sarah Paulson, Game Change
Mare Winningham, Hatfields & McCoys
Which shows do you think should win? Let us know below…
> Order the BBC's new official book, Sherlock: The Casebook, on Amazon.
> Buy the Sherlock: Series 1-2 boxset on Amazon.
Watch a clip from Sherlock's Series 2 finale…
Tags: Downton Abbey, Luther, Sherlock


Maidstone had their chances, and could easily have gone in at 45 minutes ahead. The Stones also had a goal disallowed in the second half. If that had stood it would have been all to play for, but as it was they ran out of steam and lost. I suppose that sums up their relegation season.
Depending on which form chart you look at, it's either Chesterfield or Salford City who are the best side at the moment in the National League — and many would argue that had The Blues spent their budget a little more wisely at the start of the season, we would be right up there.
Looking around the National League chat boards, there's a distinct feeling that most fans want anyone but Salford to get promoted. Having worked in the area, I can remember when Salford's average attendance was a couple of hundred fans and they had John Sheridan's brother, Darren, as manager for a few months. At one point, the club suffered an arson attack on their changing rooms and the cash-strapped side had to raise finances to rebuild their facilities. I've no problem with a team being bought out and having success, but you'd have thought they'd change their nickname from the "Ammies", meaning Amateurs, to something more appropriate.
It won't be easy next year, but at least more local matches could be on the cards. There's the distinct possibility of Notts County joining us and with any luck Macclesfield could drop out of League Two. I'd much rather go there than their relegation rivals, Yeovil. Crawley are in the worst form of the bottom teams in League Two, but I hope they stay up as it's not a place I'd wish to visit again due to the distance involved.
Stockport look like they should make it back into the National League and I hope Altrincham make it via the play-offs, mainly due to the number of nice food outlets and real ale pubs on their local market.
In the National League South, Torquay United are promoted and, of the others, I hope that Bath City go up, because it's a nice place to visit for a weekend break.


Meet upon arrival, you are welcome to Vientiane, the city of the moon - an ancient city, situated on the bend on the left bank of the Mekong as the largest city and the capital of Laos. Transfer to our hotel for check-in.
In the afternoon, we take a sightseeing of Vientiane, to visit religious museums of Wat Sisaket, the oldest temple to have been survived from the Siamese war of 1828 and its cloister contains more than 8000 Buddha statues; Wat Ho Prakeo, the former home-temple of the Emerald Buddha statue or Pra Keo, but today it contains a collection of Buddha statues, antiques and all artifacts found in around Vientiane; That Luang Stupa, the single most important monument in Laos, which was built to cover the original small stupa containing a piece of the chest bone of Buddha; Patouxay (Arch de Triumph), built quite recently in commemoration of those who died during the wars in the past and it is today as the land-mark of Vientiane.
Breakfast at hotel, we depart our hotel to visit the Morning Market, the biggest shopping center in Vientiane and we make our way by route No. 10 North to Vang Vieng, via Nam Ngum Lake, (90 km N), with hundreds of small islands. En-route, we stop to visit Ban Bor, a village where natural salt is produced. Arrive Nam Ngum Lake, we enjoy our lunch at local restaurant overlooking panoramic view of the lake. After lunch, we relax by taking a boat ride about an hour viewing around small islands. We continue to drive north into the central highlands, on the way we also stop at Ban Viengsay, a silk weaving village of Tai Neua who originally migrated from North near China border during the war. We arrive in Vangvieng and catch the sunset over the mountains.
Breakfast with hosting family, and say good-bye to villagers, we take a local taxi-tractor to get back to Vangvieng. We also visit Tham Chang, one of the deepest caves which is near Vangvieng and we also visit local market at Vang Vieng. Lunch is free on own at Vangvieng.
Return to Vientiane on the road No. 13, on the way, we stop at Ban Phone, a village where people making bamboo baskets, bamboo dinning tables...etc, and we continue to visit Vang Xang, an archaeological site where we will see Buddha sculptures in Mon style from 11th - 13th centuries carved on stones hidden in the forest. We arrive in Vientiane in late afternoon, and transfer to our hotel.
After breakfast, this morning is spent free at leisure or own exploration till we depart to Wattay airport or the Friendship Bridge for departure.


text:
Thai Soccer Team Rescue Underway, First Boys Emerge From Cave
Andrew F. Johnston
July 8, 2018 10:08 AM July 8, 2018 12:46 PM
Four of the 12 boys who have been trapped in a flooded cave in northern Thailand for more than two weeks have been rescued, as the operation was put on hold overnight to allow oxygen tanks to be refilled.
The mission to free the remaining members of the group has been suspended for at least 10 hours, Chiang Rai Governor Narongsak Osotthanakorn said, as teams replenish supplies used up removing the first four boys.
But authorities face a new race against time as heavy rain, which had been predicted later this week, pummeled the cave complex in northern Thailand shortly after the first boys were freed.
The boys, who are due to be taken to Chiang Rai hospital for further medical examination, are said to be in good health, with their condition described by officials as "not that bad."
Confirmation of the initial rescue was posted on the Thai Navy SEAL official Facebook page late Sunday evening, several hours ahead of the initial schedule provided by authorities.
The first of the four boys emerged from the cave entrance about nine hours after a team of 18 international cave diving experts entered the underground chamber to begin the hazardous process of accompanying the boys through the flooded, narrow tunnels to safety.
Previously, the entire round trip through the cave network was thought to take roughly 11 hours to complete, but efforts to drain the tunnels of flood water appear to have shortened the journey time by at least three and a half hours.
The boys wore "full face masks and the rescue divers carried them out through the passage in the cave complex," Governor Osotthanakorn told a news conference after the rescue. "It was a very smooth operation today," he added.
While the governor would not confirm the identities of the four boys, he said the first one emerged at 5:40pm local time, followed by the second boy 10 minutes later. Two other boys emerged from the cave at 7:40pm and 7:50pm local time.
Families of the children have been waiting anxiously for news following authorities' decision to initiate the rescue attempt at 10 a.m. local time Sunday, as storm clouds threatened to dump more water on the flooded caverns, undoing efforts to drain them.
Twelve boys — aged between 11 and 16 — and their coach, were discovered by two British divers on July 2, nine days after they disappeared during an outing in the Tham Luang Nang Non cave complex, in Chiang Rai, northern Thailand.
Those still inside the cave are perched on a small muddy ledge four kilometers (2.5 miles) inside the cave complex, surrounded by flood water and with a limited supply of oxygen.
Race against time
For the boys, the most dangerous part of the journey out of the labyrinth cave system remains the first kilometer, in which they are required to pass through a flooded channel no wider than a person. During this process, rescuers need to hold their oxygen tanks in front of them and swim pencil-like through submerged holes.
Having completed this section, the boys are then handed over to separate, specialist rescue teams, who help assist them through the remainder of the caves, much of which they can wade through.
But rescuers have a dwindling window of opportunity, with forecasters predicting the return of heavy monsoon rains in the coming days, effectively sealing off the cave until October.
"We have two obstacles: water and time. This what we have been racing against since day one. We have to do all we can, even though it is hard to fight the force of nature," Osotthanakorn said earlier, as rain began to fall across the site.
A rescue mission like no other
Divers have previously described conditions in the cave network as some of the most extreme they have ever faced.
The decision to move the boys using divers has not been taken lightly. On Friday, a former Thai Navy SEAL died while returning from an operation to deliver oxygen tanks to the cave where the boys are located.
Finnish volunteer diver Mikko Paasi, a long-term resident of Thailand, said the death of the Thai Navy SEAL had changed the mood on the ground and made real for rescuers just how dangerous the mission had become.
"Definitely, you can feel it that it has an effect, but we're moving on. Everyone is a professional so we're trying to put it away and avoid it happening again," he said, adding: "Everybody is focusing on getting these boys out — keeping them alive or getting them out."
Parents' constant vigil
In the hours preceding the rescue, a letter the boys had sent to their families was published on the Thai SEALs' Facebook page. The letter shows the boys in good spirits despite their ordeal.
In neat blue handwriting, 11-year-old Chanin Viboonrungruang, the youngest of the group, told his parents not to worry, and said he was looking forward to eating fried chicken.
His parents, who along with other families, have maintained a constant vigil at the site since the boys first became trapped.
On reading the letter Saturday evening, Chanin's father, Tanawut Viboonrungruang, said he felt a great sense of relief. "I had been worried about my son, that he would be exhausted, he would be tired," he said.
Now, more than two weeks after their children became trapped in a flooded cave, some of the families are finally celebrating their return.
Charges Expected for Men Accused in Woman's Murder in Indio
Palm Springs Chief of Police Addresses Arena Public Safety Costs
Riverside County's Pension Liabilities Reach $3.5 Billion


700 km of hiking trails, 70 three-thousand-metre-high peaks, 50 alpine huts, mountain inns and snack bars: the cable cars and lifts in the Wilder Kaiser - Brixental holiday region make the best of the Tyrolean Alps an easily accessible pleasure. Twelve cable cars are in operation from May until October and you can take advantage of them with the SkiWelt Hiking Experience Pass. No matter if you want to go walking with small children or grandparents, Nordic walking, mountain biking, paragliding or take a break for some rest and relaxation in the unspoiled mountain countryside, getting there is always quickest and most comfortable if you use the lifts. In the biggest natural playground in the Alps, wonderful panoramic hiking trails lie at the feet of all nature lovers and present views of the majestic Wilder Kaiser. There are also 6 mountain adventure parks: Lake Filzalm in Hochbrixen, Ellmi's Zauberwelt - magical world on the Hartkaiser, the Hohe Salve Hopfgarten Söll, KaiserWelt on the Brandstadl, Hexenwasser Söll Hohe Salve and Alpinolino on the Choralpe. The lifts can take you to all 6 adventure parks from May until October and are suitable for both children's pushchairs and wheelchairs. Admission is included in the lift ticket. Lively interaction at the adventure stations in the magical worlds, the play and discovery parks, the sparkling lakes and rustic alpine huts fills explorers and adventurers, big and small, with enthusiasm. And after all that outdoor fun, what better way to end the day than tucking into some typical Tyrolean specialities while sitting on a sun terrace or in a cosy Alpine parlour.
Lake Filzalm (1,300 m), known locally as the Filzalmsee, is a popular spot with walkers in Hochbrixen. Its charming Alpine scenery and rare animals and plants are waiting to be explored by young and old along panoramic walking trails. Right next to Lake Filzalm you'll find a biotope with viewing boxes and nature discovery stations revealing secrets from the underwater world. The themed hiking paths, "Giant's Pass", "Giant's Way" and "Giant's Forest", also have countless attractions to keep you amused. Taking care of your health and wellbeing too are Kneipp stations with moor mud paddling pools and wading pools. The mountain inns around the lake indulge guests with typical specialities from the region.
"Magical world and thrilling sensations" is the motto at Ellmi's Zauberwelt on the Hartkaiser (1,555 m) in Ellmau. With the "Zauberexpress", nature explorers big and small reach the Hartkaiser in just seven minutes. Here you'll find the 4,000 m² children's play park with a mystical fantasy world of fairies, goblins and forest spirits, not forgetting the magic frog "Ellmi" – all against a backdrop of breathtaking mountain scenery. Don't miss the wood carving hut, petting zoo, climbing castle, maze, 15m water jet, magical rain forest or tree top walk. There are lots of new things too on the Rübezahl trail with its 22 wooden figures. Similarly, for the first time on the new Jägersteig (hunter's) trail with adventure stations, you can discover the many varieties of fungi, flora and fauna. Enjoy the power of the mountains too from the comfort of the sun terraces at panoramic restaurant Bergkaiser.
The Hohe Salve (1,829 m) is a mountain in the Tyrolean lowlands that offers stunning 360° views. Thanks to the Hopfgarten and Söll lift operators, conquering the summit across 70 three-thousand-metre-high peaks with little effort becomes a gentle pleasure. New horizons are created at Austria's first revolving panoramic terrace at the summit restaurant, and likewise when the head chef serves up her "Ziachkiachln" (type of sweet or savoury doughnut) every Wednesday and Thursday. Visit the Salvenkirchlein, the pilgrimage church of John the Baptist, and discover the highest church in Tyrol. It looks back over more than 400 years of history. The Sonnenweg, or sun trail, is a beautiful panoramic path around the summit, which in about half an hour takes you past sundials, a wind harp and explains the history of time measurement. Next to the inn and the church you'll find the "sleeping giant", a grey monster for kids to clamber over and romp about to their hearts' content. Tempting tip on the Hohe Salve: sunrise trip on the first gondola for a mountain breakfast with magnificent views.
Situated between the mountain station of the 8-seater Scheffau-Brandstadl gondola and the Brandstadl mountain restaurant is KaiserWelt Scheffau. Right at the gondola mountain station, young and old leave the daily grind behind as soon as they get through the castle gate and into the Kaiser Forest. Here, on the castle wall, climbing wall, tree houses and play equipment, there's plenty of adventure to be had and secrets of the forest to uncover. A visit to the craft corner even lets you show off your creative side. For leisurely walkers, the Panorama trail on the Hartkaiser to Ellmau, the Kaiser trail, Marmot trail and the path to romantic Jochstub'nsee come highly recommended. This idyllic mountain lake is a refuge for anyone looking for rest and relaxation amidst magnificent mountain scenery: comfortably sitting in a deckchair, let your eyes wander over the view of the Wilder Kaiser and Kitzbühel Alps. On the large sun terrace of the Brandstadl mountain restaurant, the Wilder Kaiser and Hohe Tauern ranges accompanied by famously good Tyrolean delicacies, give you an appetite to find even more outdoor experiences.
With more than 60 wet and wonderful stations, the Hexenwasser theme park, meaning Witch Water, offers a natural experience and encourages the whole family to discover and explore - daily from 09.00 am to 5.30 pm.
Humming stone, witch's fireplace, singing water bowl, witch's stone mill, home of the queen bee, witch's ladder…these are the mysterious titles, as though in a picture book! Anyone aged 3 to 103 can read this book! The people in charge of each station make sure visitors get to see and experience the fascinating wonders of nature in a fun way. Walking barefoot over rocks and stones, through streams and meadows on the longest barefoot trail is reflexology for your feet and revives the entire body. Watch the bees coming and going in the Bee Theatre, copy the bees' tail wagging dance or even go into the pitch-black beehive, and you'll soon be walking on air too!
...with sunshine and happiness one sees the peaks of more than 70 three thousand metre-high mountains! At the "sun stations" with their sundials, the history of timekeeping is unfurled and the sound of the wind harp creates a very special fascination!
At Alpinolino, the Alpine discovery park at the Talkaser (1,770 m) in Westendorf, everything revolves around fun and adventure.
Following the flight of Bert the Eagle, discover and explore the mysteries of the mountain animals from the Kitzbühel Alps as you climb higher towards the sky. Hide like a marmot, have a jumping competition with weasels and rabbits, climb like a mountain goat or bravely scale the peak with the eagle's nest. But watch out –there are a few surprises along the way. There is also a totally new "flying school", where you can experience the thrill of flying like Bert the Eagle. So there's nothing else for it, it's off to Alpinolino we go!
"Get smart" is the motto here and at the many educational stations you can find out about Tyrol's mountains and their flora and fauna in an especially impressive way. The tour is well "supervised" by Alpinolino "smart alec" mountain guides, who make the mountain come to life even more.


text:
For other uses, see Nicodemus (disambiguation).
Nicodemus helping to take down Jesus' body from the cross (Pieta, by Michelangelo).
Nicodemus (/ˌnɪkəˈdiːməs/; Greek: Νικόδημος) is a Pharisee and a member of the Sanhedrin mentioned in three places in the Gospel of John:
He first visits Jesus one night to discuss Jesus' teachings (John 3:1–21).
The second time Nicodemus is mentioned, he reminds his colleagues in the Sanhedrin that the law requires that a person be heard before being judged (John 7:50–51).
Finally, Nicodemus appears after the Crucifixion of Jesus to provide the customary embalming spices, and assists Joseph of Arimathea in preparing the body of Jesus for burial (John 19:39–42).
An apocryphal work under his name — the Gospel of Nicodemus — was produced in the mid-4th century, and is mostly a reworking of the earlier Acts of Pilate, which recounts the harrowing of Hell.
Although there is no clear source of information about Nicodemus outside the Gospel of John, the Jewish Encyclopedia and many Biblical historians have speculated that he could be identical to Nicodemus ben Gurion, mentioned in the Talmud as a wealthy and popular holy man reputed to have had miraculous powers. Others point out that the biblical Nicodemus is likely an older man at the time of his conversation with Jesus, while Nicodemus ben Gurion was on the scene forty years later, at the time of the Jewish War.[1]
Nicodemus in John's Gospel
Nicodemus (left) talking to Jesus, by Henry Ossawa Tanner
Christus und Nicodemus, by Fritz von Uhde (1848–1911)
As is the case with Lazarus, Nicodemus does not belong to the tradition of the Synoptic Gospels and is only mentioned by John,[2] who devotes more than half of Chapter 3 of his gospel, a few verses of Chapter 7 and lastly mentions him in Chapter 19.
The first time Nicodemus is mentioned, he is identified as a Pharisee who comes to see Jesus "at night". John places this meeting shortly after the Cleansing of the Temple and links it to the signs which Jesus performed in Jerusalem during the Passover feast. "Rabbi, we know that you are a teacher who has come from God. For no one could perform the signs you are doing if God were not with him" (John 3:2).
Then follows a conversation with Nicodemus about the meaning of being "born again" or "born from above" (Greek: ἄνωθεν), and mention of seeing the "kingdom of God". Nicodemus explores the notion of being literally born again from one's mother's womb, but most theologians recognise that Nicodemus knew Jesus was not speaking of literal re-birth. Theologian Charles Ellicott wrote that "after the method of Rabbinic dialogue, [Nicodemus] presses the impossible meaning of the words in order to exclude it, and to draw forth the true meaning. 'You cannot mean that a man is to enter the second time into his mother's womb, and be born. What is it, then, that you do mean?'"[3]
Jesus expresses surprise, perhaps ironically, that "a teacher of Israel" does not understand the concept of spiritual rebirth. James F. Driscoll describes Nicodemus as a learned and intelligent believer, but somewhat timid and not easily initiated into the mysteries of the new faith.[2]
In Chapter 7, Nicodemus advises his colleagues among "the chief priests and the Pharisees", to hear and investigate before making a judgment concerning Jesus. Their mocking response argues that no prophet comes from Galilee. Nonetheless, it is probable that he wielded a certain influence in the Sanhedrin.[2]
Finally, when Jesus is buried, Nicodemus brought a mixture of myrrh and aloes, about 100 pounds, for embalming Jesus' body according to Jewish custom.[John 19:39] Nicodemus must have been a man of means. In his book Jesus of Nazareth: Holy Week, Pope Benedict XVI observes that, "The quantity of the balm is extraordinary and exceeds all normal proportions. This is a royal burial."[4]
Veneration and liturgical commemoration
Nicodemus is venerated as a saint in the various Eastern churches and in the Roman Catholic Church. The Eastern Orthodox and Byzantine Catholic churches commemorate Nicodemus on the Sunday of the Myrrhbearers, celebrated on the Third Sunday of Pascha (i.e., the second Sunday after Easter) as well as August 2, the date when tradition holds that his relics were found, along with those of Stephen the Protomartyr, Gamaliel, and Abibas (Gamaliel's second son). The traditional Roman Catholic liturgical calendar lists the same feast of the finding of their relics on the following day, August 3.
In the current Roman Martyrology of the Catholic Church, Nicodemus is commemorated along with Saint Joseph of Arimathea on August 31. The Franciscan Order erected a church under the patronage of Saints Nicodemus and Joseph of Arimathea in Ramla.
Nicodemus in art
Entombment, by Tizian
Nicodemus figures prominently in medieval depictions of the Deposition in which he and Joseph of Arimathea are shown removing the dead Christ from the cross, often with the aid of a ladder.
Like Joseph, Nicodemus became the object of various pious legends during the Middle Ages, particularly in connection with monumental crosses. He was reputed to have carved both the Holy Face of Lucca and the Batlló Crucifix, receiving angelic assistance with the face in particular and thus rendering the works instances of acheiropoieta.[5]
Both of these sculptures date from at least a millennium after Nicodemus' life, but the ascriptions attest to the contemporary interest in Nicodemus as a character in medieval Europe.
Nicodemus in music
In the Lutheran prescribed readings of the 18th century, the gospel text of the meeting of Jesus and Nicodemus at night was assigned to Trinity Sunday. Johann Sebastian Bach composed several cantatas for the occasion, of which O heilges Geist- und Wasserbad, BWV 165, composed in 1715, stays close to the gospel based on a libretto by the court poet in Weimar, Salomo Franck.
Ernst Pepping composed in 1937 an Evangelienmotte (motet on gospel text) Jesus und Nikodemus.
In popular music, Nicodemus' name was figuratively used in Henry Clay Work's 1864-written Civil-War-Aera piece "Wake Nicodemus",[6] which at that time was popular in minstrel shows. In 1978 Tim Curry covered the song on his debut album Read My Lips (Tim Curry album).
The discussion with Jesus is the source of several common expressions of contemporary American Christianity, specifically, the descriptive phrase "born again" used to describe salvation or baptism by some groups, and John 3:16, a commonly quoted verse used to describe God's plan of salvation.
Daniel Burke notes that, "To blacks after the Civil War, he was a model of rebirth as they sought to cast off their old identity as slaves".[4] Rosamond Rodman asserts that freed slaves who moved to Nicodemus, Kansas, after the Civil War named their town after him.[4] However, the National Park Service indicates that it was more likely based on a 1864 song Wake Nicodemus by Henry Clay Work used to promote settlement in the area.[7]
In August 16, 1967, Martin Luther King Jr. invoked Nicodemus as a metaphor concerning the need for the United States to be "born again" in order to effectively address social and economic inequality. The speech was called "Where Do We Go From Here?," and delivered at the 11th Annual SCLC Convention in Atlanta, Georgia.[8]
Jesus and Nicodemus by Crijn Hendricksz, 1616–1645
Cima da Conegliano, Nicodemus with Christ's body, Apostle John on the right and Mary to left.
Entombment, by Pietro Perugino, with Nicodemus and Joseph from Arimatea
Nicodemus (right) talking to Jesus, by William Brassey Hole, (1846–1917)
Tanner - Nicodemus coming to Christ II
↑ Carson, D.A. The Gospel according to John. Leicester: InterVarsity, 1991. 186.
1 2 3 Driscoll, James F. "Nicodemus." The Catholic Encyclopedia. Vol. 11. New York: Robert Appleton Company, 1911. 13 Dec. 2014.
↑ Charles Ellicott, Ellicott's Commentary for English Readers on John 3, accessed 10 February 2016
1 2 3 Burke, Daniel. Nicodemus, The Mystery Man of Holy Week, Religious News Service, March 27, 2013.
↑ Schiller, Gertrud. Iconography of Christian Art. Volume 2. The Passion of Jesus Christ. Janet Seligman (tr.), Greenwich, CT: New York Graphic Society, 1972: 144–5, 472–3.
↑ "Nicodemus National Historic Site", National Park Service.
↑ King Jr., Martin Luther.Where do we go from here, August 16, 1967, The Martin Luther King, Jr. Research and Education Institute, Stanford University.
Cornel Heinsdorff: Christus, Nikodemus und die Samaritanerin bei Juvencus. Mit einem Anhang zur lateinischen Evangelienvorlage (= Untersuchungen zur antiken Literatur und Geschichte, Bd.67), Berlin/New York 2003
Wikimedia Commons has media related to Nicodemus.
Jewish Encyclopedia: Nicodemus
"St. Nicodemus", Butler's Lives of the Saints
Temple Cleansing New Testament
Events Succeeded by
Samaritan Woman
at the Well
New Testament people
in Christianity
Life in the New Testament
Alphaeus
Anna the Prophetess
Blind man (Bethsaida)
Man born blind ("Celidonius")
Cleopas
Clopas
Penitent thief ("Dismas")
Impenitent thief ("Gestas")
Jairus' daughter
Malchus
Mary of Bethany
Mary of Clopas
Son of Nain's widow
Nathanael
Nicodemus (Nicodemus ben Gurion)
Simon, brother of Jesus
Simon the Leper
Simon the Pharisee
Syrophoenician woman
Jesus's brothers
God-fearers
Herodians
Myrrhbearers
Proselytes
Zealots
James of Alphaeus (James the Less)
James of Zebedee
"Disciple whom Jesus loved"
Jude Thaddeus
Simon the Zealot
Agabus
Ananias (Damascus)
Ananias (Judaea)
Ananias ben Nebedeus
Apollos
Aristarchus
Blastus
Demetrius
Elymas
Ethiopian eunuch
Eutychus
James, brother of Jesus
Joseph Barsabbas
Judas Barsabbas
Judas of Galilee
Manaen
(John) Mark
cousin of Barnabas
Mary, mother of (John) Mark
Mnason
Parmenas
Prochorus
Sceva
Seven Deacons
Silas / Silvanus
Simeon Niger
Simon Magus
Sopater
Sosthenes
Theudas
Trophimus
Tychicus
Herod's family
Antipas
Archelaus
Herodias
Pilate's wife
Agrippa
Agrippa II
Paullus
Achaicus
Andronicus
Aretas IV
Crescens
Diotrephes
Epaphras
Epaphroditus
Erastus
Euodia and Syntyche
Herodion
Hymenaeus
Jesus Justus
John the Presbyter
Nymphas
Olympas
Onesiphorus
Philetus
Sosipater
Tertius
Three Angels
Whore of Babylon


Is your business or company unable to make it without reorganizing? Are you overwhelmed by personal debt? Bankruptcy relief can offer you, your business, or the company you represent a new chance to be successful and save jobs. Experienced legal counsel can ease the bankruptcy process and help you get the most from your bankruptcy protection filing.
If you're a creditor who has been informed that one of your debtors has filed, or is about to file, for bankruptcy protection, it's equally important to get legal advice.
If you anticipate filing bankruptcy for yourself, your business, or the company you represent, or if you're a creditor who has been informed that one of your debtors is filing for bankruptcy protection, the attorneys at Tully Rinckey can help. No matter what type of bankruptcy case you may face, we offer high-quality, cost-effective legal services that achieve results.
Sometimes good businesses run into trouble. A Chapter 11 bankruptcy provides business owners with the opportunity to reorganize their finances while keeping the company in operation. This allows business owners to protect the jobs of their employees, generate revenue, and pay their creditors over time.
While Chapter 11 can't resolve major problems with business management or a poor market for a company's goods or services, it can provide breathing room by issuing an automatic stay against collection activities, release from certain burdensome leases and contracts, and an opportunity to renegotiate terms with creditors. Tully Rinckey PLLC's bankruptcy attorneys have significant experience in Chapter 11 proceedings. Let us represent your business interests.
If you are struggling with debt, Chapter 7 bankruptcy may be a good option. Under Chapter 7, the court issues an automatic stay against creditors. This stops creditor harassment and collection attempts, such as lawsuits, liens, and bank levies. In most cases, you'll be able to keep much of your personal property, including your home and car. After your nonexempt assets are liquidated and the proceeds paid to your creditors, the court wipes out the rest of your eligible debt, giving you a fresh start.
At Tully Rinckey PLLC, our experienced attorneys provide aggressive representation to our clients during bankruptcy proceedings. We can help you determine whether Chapter 7 bankruptcy is your best option, as well as provide guidance on other debt relief options.
Taxpayers have several options when faced with overwhelming back taxes. These options include long-term payment plans, "offers in compromise" – in which the IRS agrees to accept a lesser amount than what you currently owe – and bankruptcy. In fact, many people don't realize that there are circumstances in which taxes can indeed be discharged in bankruptcy proceedings.
Don't let fear keep you from getting the tax debt relief you need. The experienced bankruptcy attorneys at Tully Rinckey PLLC provide aggressive representation in your dealings with the IRS. We protect your interests and make sure that you receive any debt relief allowable by law.
The idea of filing for bankruptcy is a frightening one for many people. That's why the experienced bankruptcy attorneys at Tully Rinckey PLLC have come together to produce a series of videos that answer the most common questions about bankruptcy. Contrary to what many people believe, it's possible to survive bankruptcy and keep your home, car, and treasured valuables. You can begin to reestablish post-bankruptcy credit much sooner than you think.
If you are a creditor who has received no or minimal repayment from a bankruptcy distribution, you may have a claim on the funds received by other creditors prior to the bankruptcy filing. Or, if you are a creditor who has received funds, you may be sued by a bankruptcy trustee for simply accepting money you were legitimately owed. The U.S. bankruptcy code provides numerous defenses in these cases, while also protecting the rights of creditors who may wish to pursue these funds.
The bankruptcy attorneys of Tully Rinckey PLLC have represented both defendants and plaintiffs in U.S. district courts, U.S. bankruptcy courts and state supreme courts. We'll aggressively represent your interests while protecting your rights and privacy in all bankruptcy matters.
Just as every debtor's circumstances are different, so are bankruptcy options. The U.S. Bankruptcy Code is necessarily complex, as it exists to provide debt relief to individuals and businesses who are experiencing financial stress. Our online bankruptcy terms guide can help you understand the language used in the Bankruptcy Code and by legal professionals. By taking some time to review these terms, you'll have a better understanding of the bankruptcy process and the options available to debtors.
A secured transaction is one in which a debtor provides a creditor with something of value, typically called "collateral," as a way to secure a debt and prevent a financial loss to the creditor. If the debtor defaults on the arrangement, the creditor is able to sell the collateral to recoup any losses. The creditor maintains their interest in the collateral even if the debtor declares bankruptcy.
The attorneys at Tully Rinckey PLLC have extensive experience in secured transactions. Whether you're a creditor or debtor, we're prepared to provide you with aggressive representation and competent legal advice in this area of business.
When a debtor declares bankruptcy, your business is at risk of significant financial loss. It's important to take action as soon as you receive notice that a debtor has filed for bankruptcy. Tully Rinckey PLLC is a dedicated advocate for creditors' interests and stands ready to provide your business with aggressive representation.
Our creditor's rights attorneys have significant experience representing lenders and credit granters in all types of bankruptcies, including Chapter 7, Chapter 11, and Chapter 13. We advise creditors' committees, pursue bankruptcy non-dischargeability actions, and litigate bankruptcies as appropriate.
Can I Keep My Car if I Declare Bankruptcy?


Event: 2-Day Retreat: Focusing on Love, a Homecoming for the Exiled Heart.
Dates: Saturday 13 - Sunday 14 October 2018.
Event Description: These two days invite you to the calming practice of focusing. Whatever we focus on changes, because of the attention we give it. When we focus on Love, the exiled places in the heart start the journey home. This can be both painful and exquisite depending on the length of time you have spent in exile from the warmth of your own heart. Poems, song, drama, ritual are ways of bringing us in. So, from my heart to yours, welcome home.
Phyllida Anam-Aire is a native speaker of Gaelic who was brought up in a small mountain village in Donegal, where she learned Celtic mythology and rituals such as singing for the dying. She studied to become a Catholic nun, but changed course to learn humanistic psychology with Dr. Elisabeth Kubler-Ross. She is now a bereavement counsellor and the author of A Celtic Book of Dying.


text:
Home :: Military :: Library :: News :: 2017 :: August ::
Military Menu
In South Sudan, UN peacekeeping chief pledges support to displaced civilians in Malakal
3 August 2017 – Having witnessed first-hand various security challenges and humanitarian efforts in South Sudan, the United Nations peacekeeping chief has wrapped up his three-day mission to the country, which included a visit to the UN Protection of Civilians site in Malakal, where he expressed the Organization's resolve to support the return to stability.
"We are determined to continue doing our best to help the population," said Jean-Pierre Lacroix, Under-Secretary-General for UN Peacekeeping Operations said after visiting Malakal.
Continued civil conflict has plagued South Sudan, since December 2013. A brokered peace deal signed in August 2015 has not completely taken hold, causing hundreds of thousands to flee amidst burgeoning humanitarian challenges.
Mr. Lacroix visited the UN Protection of Civilians (PoC) site in Malakal, where 30,000 people struggle to survive. Since its formation, the internally displaced persons (IDPs) site has offered refuge to countless South Sudanese escaping conflict around their homes.
Troops on the ground briefed him on various security concerns, obstacles and humanitarian efforts underway to assist the local population.
"My visit to Malakal was quite informative on the efforts that are being made to support the population there – the IDPs – but also the population as a whole, irrespective of their affiliation," he maintained.
Through a translator, one IDP living there since December 2013 said, "in this camp we are secure," adding "but still we need more security and peace in this country."
Accompanied by Special Representative of the Secretary-General David Shearer, Head of the UN Mission in South Sudan (UNMISS), the UN peacekeeping chief spoke with local authorities, as well as the UNMISS team and representatives of UN agencies, both on the humanitarian and development sides.
"We had a good meeting with local authorities in Malakal and we agreed that we should continue to work together and increase our cooperation in order to help the return of stability and also generate better opportunities for the population there," elaborated Mr. Lacroix.
During the meeting, Peter Col Wal, speaker of the Upper Nile state assembly, urged UNMISS to support peace activities in his state.
Briefing the press in Juba
Today in the capital, Juba, after wrapping up his three-day visit to the country, Mr. Lacroix reiterated, at his final press conference, the importance of the initiative led by the Intergovernmental Authority on Development (IGAD) aimed to revitalize the peace agreement.
"Clearly it is a very important and positive thing that the countries in the region are being more engaged in helping South Sudan return to peace," he said. "The UN has welcomed and supported this new engagement by the IGAD and looks forward to that process moving forward."
He noted that the UN would continue to closely follow the national dialogue process to ensure that it is conducted in an inclusive and transparent manner, saying that it "can be a helpful instrument in bringing together stakeholders and helping them resolve their differences especially at the local level."
The peacekeeping chief also called on all parties to stop fighting and to make all efforts towards a cessation of hostilities.
Finally, Mr. Lacroix expressed concern about the dire humanitarian situation and reiterated that the UN is working impartially to help everyone in South Sudan, irrespective of ethnic and religious affiliation.
"The UN is acting impartially in helping everyone in South Sudan, irrespective of their ethnic or religious or any other affiliations. I really appreciate that this impartiality was recognized by the leadership during my meetings with them. So we are determined to continue doing our best to help the population," he said.


Plaintiffs have filed a pair of racial discrimination lawsuits against Fox News, dealing the beleaguered company another legal blow following the recent high-profile firing of anchor Bill O'Reilly over sexual harassment allegations.
When it comes to racial discrimination, 21st Century Fox has been operating as if it should be called 18th Century Fox. We sincerely hope the filing of this race class action wakes 21st Century Fox from its slumbers and inspires the company to take a conciliatory and appropriate approach to remedy its wrongs.
The suit claims that former Fox News comptroller Judith Slater made numerous racist remarks to black employees, such as "Who is going to Africa?" after President Trump announced his travel ban, along with questioning how African-Americans pronounced words like "ask" and "mother."
Slater was fired by Fox in February. However, the plaintiffs allege that top executives at the company, including the director of human resources, knew about the comments but that "nothing could be done because Slater knew too much about senior executives" at Fox.
The suit was initially filed in March by Tichaona Brown and Tabrese Wright, two black women who worked in the payroll department at Fox. They were later joined by Monica Douglas. Most recently, Kelly Wright added his name to the suit. Wright, who has been with Fox News for 15 years and won two Emmy Awards, remains with the company as an anchor.
The plaintiffs argue in the suit that "the only consistency at Fox is the abhorrent, intolerable, unlawful and hostile racial discrimination that was inflicted on minority employees that appears more akin to Plantation-style management than a modern-day work environment."
The second suit, filed in federal court in the Southern District of New York by former accounts payable worker Adasa Blanco, also specifically names Slater: "Fox knowingly harbored and protected a racist employee, Slater, for more than eight years and then feigned...to the media and public that it terminated her immediately upon learning that she engaged in discriminatory conduct."
Fox News, through a spokesman, has denied the claims made in both suits.
The racial discrimination allegations add to a long list of recent legal problems at Fox, coming so soon after the company forced out O'Reilly, which came only months after the removal of longtime CEO Roger Ailes last year, also over claims of sexual misconduct. Judith Roginsky, a former Fox News contributor, filed another sexual harassment suit against the network and top executives earlier this month.
NEXT: THE BILL O'REILLY FIRING AFTERMATH: HOW HAVE THINGS CHANGED?