text:
ABU GHAUSH VISITS JORDAN U17 TEAM
Olympic taekwondo gold medallist Ahmad Abu Ghaush has paid a surprise visit to the Jordan team preparing to take on the world's best at the FIFA U17 Women's World Cup. The girls will be playing Spain in Friday's opener and were delivered some words of advice and encouragement from the history maker. "I received incredible support from Jordan during the Olympics so I was only too willing to show my support to the girls when the Jordan Olympic Committee asked me. "I told them that we are all right behind them and that all they can do is try their very best. Win or lose they are already our heroes." Abu Ghaush has just returned to light training following his gold medal winning performance in Rio de Janeiro on August 18.


Some people get angry when things don't go according to plan, believing they are owed something. This may be a successful job, great relationship, health, happiness, etc. Basically it's an expectation that everything externally should align with what you feel you deserve. A lot of this starts in childhood, then society layers on top of it. But when you think the world has to cooperate with your expectations, you are powerless.
Maybe you're in a relationship where you expect your partner to be everything you want. You DESERVE someone who washes the dishes, buys thoughtful gifts and anticipates your needs. But when your partner fails, you get angry and maybe even tell him/her how they fall short. You criticize and blame them for your unhappiness instead of looking at your expectations and how you treat yourself. It's a form of victimhood.
Nothing is owed to anyone. If you want something, YOU need to make it happen. As long as you wait for other people to act how you want them to, you'll be frustrated and disappointed. This isn't about settling, which is accepting breadcrumbs because you don't feel you deserve what you want. It's about taking the reins, meeting your own emotional needs and making things happen. Otherwise you'll keep riding in the backseat of your own life.


A lot of people baulk at the idea of going to the dermatologist because they believe that it will cost too much. However, healthy skin is just as important to your overall well-being as any other part of your body. It is much better to look at it from the perspective of whether or not you need the help. If your skin is in such a poor condition that you are considering going to the dermatologist, it makes sense to book an appointment.
And you will also be happy to know that the dermatologist appointment cost is a lot lower than most of us anticipate. It should not cost you more than a couple of hundred dollars maximum to see a dermatologist one time and that is when you do not have insurance. If you have a solid insurance policy, either through your job or via your family, the cost is even less. If you wish to enquire about the cost on your insurance plan, it is best to use the provider's website to get further information. Then you will know exactly how much you need to pay out of pocket.
Now that you are aware of the relatively low cost associated with going to the dermatologist, we can talk about the benefits of these appointments. If you are suffering from breakouts, or you are seeing some unusual rash on your skin, a dermatologist is the best person to assist you in identifying what is wrong. There are also cases where your regular doctor may recommend that you see a dermatologist for a second opinion about a potential skin condition.
When we think of acne, we typically think of teenagers who have one too many pimples. However, acne is not something that only impacts teenagers who are going through puberty. It is also a very real issue when you are older – and it is a problem that only a dermatologist can help you solve. If you have already tried over the counter acne creams and soaps, your best bet is to book an appointment today. Your dermatologist is in the best position to examine your skin and recommend a course of action to resolve your acne issues. You will be surprised at how much they can help you, and how quickly they can tell what your issue stems from.
Dermatologists are also very important when dealing with the possibility of having skin cancer. Sometimes you may notice a mole or some spots on your skin that were not there before. If these spots clear up in a few days, you are okay as it was probably just a natural occurrence. But if they are persisting and growing larger or changing color, you should book an appointment. A dermatologist can run the necessary tests to rule out skin cancer and determine what is causing the moles or spots. Never take the possibility of skin cancer lightly as seeing a dermatologist could save your life!


The IGS-1608SM-8PH model is a managed industrial grade Gigabit PoE (Power over Ethernet) switch with 16x 10/100/1000Base-T PoE ports and 8x SFP Gigabit/Fast Ethernet ports that provide stable and reliable Ethernet transmission. The Ethernet switch supports a variety of management functions, including STP/RSTP/MSTP/ ITU-T G.8032 Ring and multiple u-Ring for redundant cabling , advanced PoE management functions such as PoE device auto-checking and auto reset, PoE power weekly scheduling, Layer 2 Ethernet IGMP, VLAN, QoS ,Security ,IPv6, bandwidth control, port mirroring, cable diagnostic and Green Ethernet. Housed in rugged DIN rail or wall mountable enclosures, this switch is designed for harsh environments, such as industrial networking, Traffic surveillance, security automation applications, IP surveillance ,City Security , intelligent transportation systems (ITS) and is also suitable for many military and utility market applications where environmental conditions exceed commercial product specifications. IGS-1608SM-8PH has an operating temperature range -10 to 60°C.


text:
#include "user.h"
#include "user_def.h"
#include "assoc.h"
#include "schema.h"
#include "space.h"
#include "memtx_index.h"
#include "func.h"
#include "index.h"
#include "bit/bit.h"
#include "session.h"

struct universe universe;
static struct user users[BOX_USER_MAX];
struct user *guest_user = users;
struct user *admin_user = users + 1;

static struct user_map user_map_nil;

struct mh_i32ptr_t *user_registry;

/* {{{ user_map */

static inline int
user_map_calc_idx(uint8_t auth_token, uint8_t *bit_no)
{
	*bit_no = auth_token & (UMAP_INT_BITS - 1);
	return auth_token / UMAP_INT_BITS;
}

/** Set a bit in the user map - add a user. */
static inline void
user_map_set(struct user_map *map, uint8_t auth_token)
{
	uint8_t bit_no;
	int idx = user_map_calc_idx(auth_token, &bit_no);
	map->m[idx] |= ((umap_int_t) 1) << bit_no;
}

/** Clear a bit in the user map - remove a user. */
static inline void
user_map_clear(struct user_map *map, uint8_t auth_token)
{
	uint8_t bit_no;
	int idx = user_map_calc_idx(auth_token, &bit_no);
	map->m[idx] &= ~(((umap_int_t) 1) << bit_no);
}

/* Check if a bit is set in the user map. */
static inline bool
user_map_is_set(struct user_map *map, uint8_t auth_token)
{
	uint8_t bit_no;
	int idx = user_map_calc_idx(auth_token, &bit_no);
	return map->m[idx] & (((umap_int_t) 1) << bit_no);
}

/**
 * Merge two sets of users: add all users from right argument
 * to the left one.
 */
static void
user_map_union(struct user_map *lhs, struct user_map *rhs)
{
	for (int i = 0; i < USER_MAP_SIZE; i++)
		lhs->m[i] |= rhs->m[i];
}

/**
 * Remove all users present in rhs from lhs
 */
static void
user_map_minus(struct user_map *lhs, struct user_map *rhs)
{
	for (int i = 0; i < USER_MAP_SIZE; i++)
		lhs->m[i] &= ~rhs->m[i];
}

/** Iterate over users in the set of users. */
struct user_map_iterator
{
	struct bit_iterator it;
};

static void
user_map_iterator_init(struct user_map_iterator *it, struct user_map *map)
{
	bit_iterator_init(&it->it, map->m,
			  USER_MAP_SIZE * sizeof(umap_int_t), true);
}

static struct user *
user_map_iterator_next(struct user_map_iterator *it)
{
	size_t auth_token = bit_iterator_next(&it->it);
	if (auth_token != SIZE_MAX)
		return users + auth_token;
	return NULL;
}

/* }}} */

/* {{{ privset_t - set of effective privileges of a user */

extern "C" {

static int
priv_def_compare(const struct priv_def *lhs, const struct priv_def *rhs)
{
	if (lhs->object_type != rhs->object_type)
		return lhs->object_type > rhs->object_type ? 1 : -1;
	if (lhs->object_id != rhs->object_id)
		return lhs->object_id > rhs->object_id ? 1 : -1;
	return 0;
}

} /* extern "C" */

rb_gen(, privset_, privset_t, struct priv_def, link, priv_def_compare);

/* }}}  */

/** {{{ user */

static void
user_create(struct user *user, uint8_t auth_token)
{
	assert(user->auth_token == 0);
	user->auth_token = auth_token;
	privset_new(&user->privs);
	region_create(&user->pool, &cord()->slabc);
}

static void
user_destroy(struct user *user)
{
	/*
	 * Sic: we don't have to remove a deleted
	 * user from users set of roles, since
	 * to drop a user, one has to revoke
	 * all privileges from them first.
	 */
	region_destroy(&user->pool);
	memset(user, 0, sizeof(*user));
}

/**
 * Add a privilege definition to the list
 * of effective privileges of a user.
 */
void
user_grant_priv(struct user *user, struct priv_def *def)
{
	struct priv_def *old = privset_search(&user->privs, def);
	if (old == NULL) {
		old = (struct priv_def *)
			region_alloc_xc(&user->pool, sizeof(struct priv_def));
		*old = *def;
		privset_insert(&user->privs, old);
	} else {
		old->access |= def->access;
	}
}

/**
 * Find the corresponding access structure
 * given object type and object id.
 */
struct access *
access_find(struct priv_def *priv)
{
	struct access *access = NULL;
	switch (priv->object_type) {
	case SC_UNIVERSE:
	{
		access = universe.access;
		break;
	}
	case SC_SPACE:
	{
		struct space *space = space_by_id(priv->object_id);
		if (space)
			access = space->access;
		break;
	}
	case SC_FUNCTION:
	{
		struct func *func = func_by_id(priv->object_id);
		if (func)
			access = func->access;
		break;
	}
	default:
		break;
	}
	return access;
}

/**
 * Reset effective access of the user in the
 * corresponding objects.
 */
static void
user_set_effective_access(struct user *user)
{
	struct credentials *cr = current_user();
	struct priv_def *priv;
	for (priv = privset_first(&user->privs);
	     priv;
	     priv = privset_next(&user->privs, priv)) {
		struct access *object = access_find(priv);
		 /* Protect against a concurrent drop. */
		if (object == NULL)
			continue;
		struct access *access = &object[user->auth_token];
		access->effective = access->granted | priv->access;
		/** Update global access in the current session. */
		if (priv->object_type == SC_UNIVERSE &&
		    user->def.uid == cr->uid) {
			cr->universal_access = access->effective;
		}
	}
}

/**
 * Reload user privileges and re-grant them.
 */
static void
user_reload_privs(struct user *user)
{
	if (user->is_dirty == false)
		return;
	struct priv_def *priv;
	/**
	 * Reset effective access of the user in the
	 * corresponding objects to have
	 * only the stuff that it's granted directly.
	 */
	for (priv = privset_first(&user->privs);
	     priv;
	     priv = privset_next(&user->privs, priv)) {
		priv->access = 0;
	}
	user_set_effective_access(user);
	region_free(&user->pool);
	privset_new(&user->privs);
	/* Load granted privs from _priv space. */
	{
		struct space *space = space_cache_find(BOX_PRIV_ID);
		char key[6];
		/** Primary key - by user id */
		MemtxIndex *index = index_find_system(space, 0);
		mp_encode_uint(key, user->def.uid);

		struct iterator *it = index->position();
		index->initIterator(it, ITER_EQ, key, 1);

		struct tuple *tuple;
		while ((tuple = it->next(it))) {
			struct priv_def priv;
			priv_def_create_from_tuple(&priv, tuple);
			/**
			 * Skip role grants, we're only
			 * interested in real objects.
			 */
			if (priv.object_type != SC_ROLE)
				user_grant_priv(user, &priv);
		}
	}
	{
		/* Take into account privs granted through roles. */
		struct user_map_iterator it;
		user_map_iterator_init(&it, &user->roles);
		struct user *role;
		while ((role = user_map_iterator_next(&it))) {
			struct priv_def *def = privset_first(&role->privs);
			while (def) {
				user_grant_priv(user, def);
				def = privset_next(&role->privs, def);
			}
		}
	}
	user_set_effective_access(user);
	user->is_dirty = false;
}

/** }}} */

/* {{{ authentication tokens */

/** A map to quickly look up free slots in users[] array. */
static umap_int_t tokens[USER_MAP_SIZE];
/**
 * Index of the minimal element of the tokens array which
 * has an unused token.
 */
static int min_token_idx = 0;

/**
 * Find and return a spare authentication token.
 * Raise an exception when the maximal number of users
 * is reached (and we're out of tokens).
 */
uint8_t
auth_token_get()
{
	uint8_t bit_no = 0;
	while (min_token_idx < USER_MAP_SIZE) {
                bit_no = __builtin_ffs(tokens[min_token_idx]);
		if (bit_no)
			break;
		min_token_idx++;
        }
	if (bit_no == 0 || bit_no > BOX_USER_MAX) {
		/* A cap on the number of users was reached.
		 * Check for BOX_USER_MAX to cover case when
		 * USER_MAP_BITS > BOX_USER_MAX.
		 */
		tnt_raise(LoggedError, ER_USER_MAX, BOX_USER_MAX);
	}
        /*
         * find-first-set returns bit index starting from 1,
         * or 0 if no bit is set. Rebase the index to offset 0.
         */
	bit_no--;
	tokens[min_token_idx] ^= ((umap_int_t) 1) << bit_no;
	int auth_token = min_token_idx * UMAP_INT_BITS + bit_no;
	assert(auth_token < UINT8_MAX);
	return auth_token;
}

/**
 * Return an authentication token to the set of unused
 * tokens.
 */
void
auth_token_put(uint8_t auth_token)
{
	uint8_t bit_no;
	int idx = user_map_calc_idx(auth_token, &bit_no);
	tokens[idx] |= ((umap_int_t) 1) << bit_no;
	if (idx < min_token_idx)
		min_token_idx = idx;
}

/* }}} */

/* {{{ user cache */

struct user *
user_cache_replace(struct user_def *def)
{
	struct user *user = user_by_id(def->uid);
	if (user == NULL) {
		uint8_t auth_token = auth_token_get();
		user = users + auth_token;
		user_create(user, auth_token);
		struct mh_i32ptr_node_t node = { def->uid, user };
		mh_i32ptr_put(user_registry, &node, NULL, NULL);
	}
	*(struct user_def *) user = *def;
	return user;
}

void
user_cache_delete(uint32_t uid)
{
	struct user *user = user_by_id(uid);
	if (user) {
		assert(user->auth_token > ADMIN);
		auth_token_put(user->auth_token);
		assert(user_map_is_empty(&user->roles));
		assert(user_map_is_empty(&user->users));
		/*
		 * Sic: we don't have to remove a deleted
		 * user from users hash of roles, since
		 * to drop a user, one has to revoke
		 * all privileges from them first.
		 */
		user_destroy(user);
		mh_i32ptr_del(user_registry, uid, NULL);
	}
}

/** Find user by id. */
struct user *
user_by_id(uint32_t uid)
{
	mh_int_t k = mh_i32ptr_find(user_registry, uid, NULL);
	if (k == mh_end(user_registry))
		return NULL;
	return (struct user *) mh_i32ptr_node(user_registry, k)->val;
}

struct user *
user_find(uint32_t uid)
{
	struct user *user = user_by_id(uid);
	if (user == NULL)
		diag_set(ClientError, ER_NO_SUCH_USER, int2str(uid));
	return user;
}

/** Find user by name. */
struct user *
user_find_by_name(const char *name, uint32_t len)
{
	uint32_t uid = schema_find_id(BOX_USER_ID, 2, name, len);
	struct user *user = user_by_id(uid);
	if (user == NULL || user->def.type != SC_USER) {
		char name_buf[BOX_NAME_MAX + 1];
		/* \0 - to correctly print user name the error message. */
		snprintf(name_buf, sizeof(name_buf), "%.*s", len, name);
		diag_set(ClientError, ER_NO_SUCH_USER, name_buf);
		return NULL;
	}
	return user;
}

void
user_cache_init()
{
	/** Mark all tokens as unused. */
	memset(tokens, 0xFF, sizeof(tokens));
	user_registry = mh_i32ptr_new();
	/*
	 * Solve a chicken-egg problem:
	 * we need a functional user cache entry for superuser to
	 * perform recovery, but the superuser credentials are
	 * stored in the snapshot. So, pre-create cache entries
	 * for 'guest' and 'admin' users here, they will be
	 * updated with snapshot contents during recovery.
	 */
	struct user_def def;
	memset(&def, 0, sizeof(def));
	snprintf(def.name, sizeof(def.name), "guest");
	def.owner = ADMIN;
	def.type = SC_USER;
	struct user *user = user_cache_replace(&def);
	/* 0 is the auth token and user id by default. */
	assert(user->def.uid == GUEST && user->auth_token == GUEST);
	(void)user;

	memset(&def, 0, sizeof(def));
	snprintf(def.name, sizeof(def.name), "admin");
	def.uid = def.owner = ADMIN;
	def.type = SC_USER;
	user = user_cache_replace(&def);
	/* ADMIN is both the auth token and user id for 'admin' user. */
	assert(user->def.uid == ADMIN && user->auth_token == ADMIN);
}

void
user_cache_free()
{
	if (user_registry)
		mh_i32ptr_delete(user_registry);
}

/* }}} user cache */

/** {{{ roles */

void
role_check(struct user *grantee, struct user *role)
{
	/*
	 * Check that there is no loop from grantee to role:
	 * if grantee is a role, build up a closure of all
	 * immediate and indirect users of grantee, and ensure
	 * the granted role is not in this set.
	 */
	struct user_map transitive_closure = user_map_nil;
	user_map_set(&transitive_closure, grantee->auth_token);
	struct user_map current_layer = transitive_closure;
	while (! user_map_is_empty(&current_layer)) {
		/*
		 * As long as we're traversing a directed
		 * acyclic graph, we're bound to end at some
		 * point in a layer with no incoming edges.
		 */
		struct user_map next_layer = user_map_nil;
		struct user_map_iterator it;
		user_map_iterator_init(&it, &current_layer);
		struct user *user;
		while ((user = user_map_iterator_next(&it)))
			user_map_union(&next_layer, &user->users);
		user_map_union(&transitive_closure, &next_layer);
		current_layer = next_layer;
	}
	/*
	 * Check if the role is in the list of roles to which the
	 * grantee is granted.
	 */
	if (user_map_is_set(&transitive_closure,
			    role->auth_token)) {
		tnt_raise(ClientError, ER_ROLE_LOOP,
			  role->def.name, grantee->def.name);
	}
}

/**
 * Re-calculate effective grants of the linked subgraph
 * this user/role is a part of.
 */
void
rebuild_effective_grants(struct user *grantee)
{
	/*
	 * Recurse over all roles to which grantee is granted
	 * and mark them as dirty - in need for rebuild.
	 */
	struct user_map_iterator it;
	struct user *user;
	struct user_map current_layer = user_map_nil;
	user_map_set(&current_layer, grantee->auth_token);
	while (!user_map_is_empty(&current_layer)) {
		struct user_map next_layer = user_map_nil;
		user_map_iterator_init(&it, &current_layer);
		while ((user = user_map_iterator_next(&it))) {
			user->is_dirty = true;
			user_map_union(&next_layer, &user->users);
		}
		/*
		 * Switch to the nodes which are not in the set
		 * yet.
		 */
		current_layer = next_layer;
	}
	/*
	 * First, construct a subset of the transitive
	 * closure consisting from the nodes with no
	 * incoming edges (roles which have no granted
	 * roles). Build their list of effective grants
	 * from their actual grants.
	 *
	 * Propagate the effective grants through the
	 * outgoing edges of the nodes, avoiding the nodes
	 * with incoming edges from not-yet-evaluated nodes.
	 * Eventually this process will end with a set of
	 * nodes with no outgoing edges.
	 */
	struct user_map transitive_closure = user_map_nil;
	current_layer = user_map_nil;
	user_map_set(&current_layer, grantee->auth_token);
	/*
	 * Propagate effective privileges from the nodes
	 * with no incoming edges to the remaining nodes.
	 */
	while (! user_map_is_empty(&current_layer)) {
		struct user_map postponed = user_map_nil;
		struct user_map next_layer = user_map_nil;
		user_map_iterator_init(&it, &current_layer);
		while ((user = user_map_iterator_next(&it))) {
			struct user_map indirect_edges = user->roles;
			user_map_minus(&indirect_edges, &transitive_closure);
			if (user_map_is_empty(&indirect_edges)) {
				user_reload_privs(user);
				user_map_union(&next_layer, &user->users);
			} else {
				/*
				 * The user has roles whose
				 * effective grants have not been
				 * calculated yet. Postpone
				 * evaluation of effective grants
				 * of this user till these roles'
				 * effective grants have been
				 * built.
				 */
				user_map_union(&next_layer, &indirect_edges);
				user_map_set(&postponed, user->auth_token);
				user_map_set(&next_layer, user->auth_token);
			}
		}
		user_map_minus(&current_layer, &postponed);
		user_map_union(&transitive_closure, &current_layer);
		current_layer = next_layer;
	}
}

/**
 * Update verges in the graph of dependencies.
 * Grant all effective privileges of the role to whoever
 * this role was granted to.
 */
void
role_grant(struct user *grantee, struct user *role)
{
	user_map_set(&role->users, grantee->auth_token);
	user_map_set(&grantee->roles, role->auth_token);
	rebuild_effective_grants(grantee);
}

/**
 * Update the role dependencies graph.
 * Rebuild effective privileges of the grantee.
 */
void
role_revoke(struct user *grantee, struct user *role)
{
	user_map_clear(&role->users, grantee->auth_token);
	user_map_clear(&grantee->roles, role->auth_token);
	rebuild_effective_grants(grantee);
}

void
priv_grant(struct user *grantee, struct priv_def *priv)
{
	struct access *object = access_find(priv);
	if (object == NULL)
		return;
	struct access *access = &object[grantee->auth_token];
	assert(privset_search(&grantee->privs, priv) || access->granted == 0);
	access->granted = priv->access;
	rebuild_effective_grants(grantee);
}

/** }}} */

redpajama_set_name: RedPajamaGithub


With the stresses and strains placed on everyone in today's working world, workplaces can look at, how they might help promote and maintain mental health and wellbeing amongst their employees.
Michael has been with Staples since July 2009. He commenced in his position as Vice President, Human Resources, Australia and New Zealand in April 2012. Prior to this, Michael held the role of National Organisational Development Manager where he was responsible for delivering critical leadership and talent management frameworks and for developing Staples in-house sales training and recruitment capabilities. Before joining Staples, Michael gained his Human Resources experience within global organisations such as Goodman Fielder and Unilever.
Dobbrick is an award-winning workplace wellbeing consultant, recognised for her work in OHS training program development, for the Maurice Blackburn Vicarious Trauma Program. Kate has a long-term interest in the sustainable maintenance of professional psychological wellbeing, focusing on building leadership and employee resilience and capability within a psychologically safe workplace. Kate's experience working in the plaintiff legal environment highlighted the need for a systematic approach to supporting the mental wellbeing of legal professionals exposed vicariously to trauma via their clients. Her current role sees her focussing on a holistic employee health and wellbeing program, designed to support the specific requirements of the firm's lawyers and legal staff.


There is no question that our world today suffers from high divorce rates, rampant sexual promiscuity and a free and easy attitude to relationships. While we can blame the presence of sin as a reason for this, it does not wholly explain why many Christians seem to struggle with the same sexual and marital problems as the world. In the belief that this is partly due to the failure of the church to instruct its people about the true nature of redeemed relationships, Anthony Selvaggio takes a thoroughly biblical and immensely practical look at the topics of human sexuality, romance and marriage, as they are revealed in the Song of Songs. It is his desire that marriages will be restored and enriched as we examine this picture of the divine love of God expressed in the greatest love of all, the Lord Jesus Christ.


text:
Evelyn Palla
DB Regio trains running through Baden-Württemberg using biofuel
57 DB Regio trains are now running through Baden-Württemberg using…
6 September 2022 | By Elliot Robinson (Editorial Assistant - Global Railway Review)
57 DB Regio trains are now running through Baden-Württemberg using biofuel, resulting in around 90 per cent less CO2 emissions than diesel.
ÖBB and Siemens present results of electro-hybrid battery pilot project
ÖBB and Siemens Mobility are investing in the future of…
10 September 2018 | By Global Railway Review
ÖBB and Siemens Mobility are investing in the future of passenger transport and developing an electro-hybrid battery drive for trains.
ÖBB and Bombardier sign call-off order for 25 TALENT 3 trains
Bombardier Transportation and the Austrian Federal Railways (ÖBB) have signed…
3 July 2018 | By Global Railway Review
Bombardier Transportation and the Austrian Federal Railways (ÖBB) have signed a call-off order for the delivery of 25 BOMBARDIER TALENT 3 trains. This second call-off is based on a framework agreement signed in 2016 for up to 300 trains. The total value of this order is approximately €188 million and…

redpajama_set_name: RedPajamaCommonCrawl


text:
Eloquent street boy back in the gutter
By NAIROBI NEWS REPORTER March 26th, 2016 2 min read
Street boy Morris who displayed a remarkable command of English. PHOTO | COURTESY
Just when it seemed as if the opportunity that he so passionately spoke about had finally come his way, street boy Morris Mwenda has been rendered homeless yet again.
Morris captured the attention of the nation late last month with his eloquent speech in an online video that went viral prompting a campaign by Kenyans of goodwill to have him returned to school.
Former street boy Morris Mwenda to intern at Supreme Court
Meet street boy whose command of English will make you seek a school fees refund
But three weeks after finding refuge courtesy of a charity group by the name Homeless of Nairobi and even meeting Chief Justice Dr Willy Mutunga, Morris is back on the streets under unclear circumstances.
In a new video posted on Facebook, the youngster claims that he and some of his friends left their new home over what he termed as mistreatment and physical abuse by those who run the facility that is based in Gachie area of Nairobi.
Chief Justice Willy Mutunga hands the constitution of Kenya to former street boy Morris Mwenda. PHOTO | COURTESY
"I have been hearing rumors that Morris has been taken in by (Senator) Mike Sonko. Those are just rumours. We want to go back to school but we are uncomfortable where we are living in Gachie," he says in the undated video shot at night on the streets of Nairobi.
The said facility, that runs a home for former street boys and currently houses about 30 boys, had promised to sponsor Morris and his friends to go back to school and complete their education.
But according to Morris, all that has turned out to be empty promises as the home is yet to fulfill its pledges.
"This is the same Morris you saw meeting the Chief Justice, but I wonder why Morris is now roaming on the streets again," he said while recounting the alleged hardships that he and his friends have been subjected to at the facility for the homeless.
Efforts by Nairobi News to reach the home for comments on the new development proved futile as calls to contacts persons within the home went unanswered.
Watch the latest video here: https://www.facebook.com/skkomen/videos/10207741937321413/
Homeless of Nairobi
Morris Mwenda
Street boy
Two suspected thugs shot dead in Umoja
Six suspects arrested over Uber taxi attacks


Traumatised pensioners have described the misery caused by a pair of young yobs who wreaked terror across their neighbourhood.
The two tearaways, aged just 12 and 14, caused mayhem for residents in Norley Hall, Worsley Hall, Marsh Green, Kitt Green and Newtown and businesses at Robin Retail Park during their mindless wave of wanton destruction.
Shop windows were shattered night after night, and residents' cars were smashed causing more than £20k damage. Their crimes left one elderly man so terrified he was unable to sleep at night.
After a lengthy investigation by police - shocked at the repeated attacks - the teens were finally apprehended and appeared at Wigan and Leigh Magistrates' Court where they both admitted their part in the wrecking spree. The 14-year-old "main instigator" was given youth detention after pleading guilty to eight charges.
His accomplice, a 12-year-old boy who has also admitted to eight charges, will be sentenced later this month.
In victim impact statements, residents revealed how the endless vandalism seriously affected their lives over a two-year-period.
A 70-year-old man, who lives on his own, told police: "Over the past two years I have been subject to a lot of anti-social behaviour where my property was targeted.
"I believe this is because of the colour of my skin.
"All of these incidents have taken a toll on me. I cannot sleep at night, I wake up to the slightest noise.
Another explained how he has been driving around with cling film on his window as he cannot afford to repair the damage done by the youngsters. He said: "I can't afford the cost of getting it fixed. I cannot understand the mentality of these people.
"There is no logic to it, to why they would do this.
A third victim had already been targeted and had begun parking elsewhere to prevent further damage.
The 71-year-old said: "I was really upset with the damage done to my car. It's not the first time.
Sgt Paul Higham, who led the investigation into the crimes, explained that businesses, as well as residents, had been left in financial dire straits as a direct result of the teens' actions.
During their rampage windows in Costa Coffee and Submway were smashed time and time again and in addition the TUI, Curry's PC World and Healthy Lifestyle units at Robin Park were also targeted.
Sgt Higham said that as a result of the crime wave businesses at Robin Park were considering clubbing together to pay for round-the-clock security: "If this had continued, some of the businesses would have closed down," he said.
"No sooner were they fixing the damage they were getting damaged again.
"It was costing shops £10,000 plus.
The police officer said the case had given him and his officers sleepless nights as they worked tirelessly to catch the offenders.
He said: "This case has given me sleepless nights.
"The victims are so pleased they have been apprehended, especially people living in the areas around Marsh Green and Norley Hall Avenue.


text:
The Long Island Daily Press was a daily newspaper that was published in Jamaica, Queens. It was founded in 1821 as the Long Island Farmer. The paper's founder, Henry C. Sleight, was born in New York City in 1792, and raised in Sag Harbor, Long Island. Sleight got his start as a newspaperman when he worked on the staff of the Suffolk County Gazette, a weekly newspaper published in Sag Harbor. During the War of 1812 Sleight enlisted in the army and saw action on the Kentucky frontier. After the war he remained in Kentucky for a few years, during which time he published another weekly newspaper, the Messenger, and later went into the mercantile business. After suffering heavy business losses due to a fire, Sleight returned to New York and settled in Jamaica, where he established the Long Island Farmer.

The Long Island Farmer began as a weekly newspaper, publishing its first issue on January 4, 1821. It continued, sometimes as a weekly and sometimes bi-weekly, under Sleight's successors Thomas Bradley, Isaac F. Jones and Charles S. Watrous. In the 1880s the paper came under the ownership of John C. Kennehan, a farmer and printer who had been in charge of the Brooklyn Daily Eagles Long Island Department. At the time Kennehan became its owner, the Farmer's offices were located on the west side of Herriman Avenue (now 161st Street) in Jamaica. Kennehan was still the paper's editor in 1898, when Queens County was partitioned, with the western portion of the original county (including Jamaica) becoming part of Greater New York City, while the eastern portion became present-day Nassau County. In response to these changes, Kennehan began to change the Farmers format and approach to bring it into line with Queens' new role as part of an emerging metropolis. After Kennehan's death his nephew James F. Sullivan took over as the Farmers owner, but after some setbacks he sold his interest in the paper to James O'Rourke.

In 1912 the Long Island Farmer absorbed the Long Island Democrat, Jamaica's other weekly newspaper. At the same time the Farmer became a daily newspaper. In 1920 a Jamaica lawyer named Benjamin Marvin became the Farmers sole owner. At the start of the following year the newspaper changed its name to the Long Island Daily Press and Farmer.

In June 1926 the Long Island Press and Farmer was acquired by the Ridder Brothers, owners of New York's German-language newspaper, the Staats-Zeitung. The Ridders shortened the paper's name to the Long Island Press and appointed William F. Hoffman as its publisher. During Hoffman's tenure the Press built a new printing plant and offices at 92-24 168th Street, south of Jamaica Avenue. The first papers were printed in the new building on September 17, 1931. In February of the following year Hoffman launched a Sunday edition, the Long Island Sunday Press.

Later in 1932 the Ridders sold their controlling interest in the Press to Samuel I. Newhouse, who also owned the Staten Island Advance. In June 1938, Newhouse acquired the Press main competitor, the Long Island Daily-Star Journal. In the years that followed, many stories and photographs that appeared in the Press would also appear in the Star-Journal. The Newhouse family would continue to publish the Star-Journal until 1968 and the Press until 1977.

Under Newhouse's ownership the Press began to expand its coverage eastward, first to Nassau and then to Suffolk County. In 1932 the Press daily circulation was less than 30,000. By 1952 that number had climbed to 157,000. With the arrival of the post-war boom in Queens, Nassau and Suffolk the Press circulation continued to rise, reaching an all-time high of 445,000 daily and 422,000 Sunday in 1969. But with the economic decline of the 1970s many of the stores and other local businesses that the Press depended on for advertising sales either closed or cut their advertising budgets. At the same time the Press began losing circulation, particularly in Nassau and Suffolk Counties, as other New York daily papers expanded their suburban coverage, and their primary Nassau-Suffolk competitor, Newsday, improved quality, increased circulation and added a Sunday edition. In March 1977 the Long Island Press ceased publication, citing increasing costs, decreased advertising revenue and declining circulation. The old Long Island Press building stood unoccupied on 168th Street until 2005, when it was demolished to make way for the Home Depot store that currently occupies the site.

The Archives (formerly the Long Island Division) at the Queens Library has microfilm of the Long Island Daily Press from 1921 to 1977, and of the Long Island Farmer from 1821 to 1920. The Queens Library Archives also has a collection of approximately 3,600 photographs from the Long Island Daily Press photo morgue. The Levittown Public Library in Nassau County has microfilm of the Long Island Daily Press from 1944 to 1977.

References

Defunct newspapers published in New York (state)
Long Island
Publications established in 1821
Publications disestablished in 1977
1821 establishments in New York (state)
1977 disestablishments in New York (state)
Daily newspapers published in New York (state)

redpajama_set_name: RedPajamaWikipedia


text:
WorkSafe Annual Report
by Catherine Sim
HomeNews ArticlesWorkSafe Annual Report
Whilst a significant section of the WorkSafe Annual Report relates to financial reporting for the 16/17 financial year, some interesting points in relation to WorkCover claims and processes were made. These include the following:
Approximately 45% of workers with a mental injury have not returned to work within six months of their injury, compared with 18% of workers with a physical injury. Anecdotal evidence that psychological claims are often rejected and require litigation may account for the poor return to work results experienced by those with a mental injury.
3% of Victorians work on farms, yet almost 30% of workplace deaths occur on them. Quad bikes are one of the main causes of serious injuries and fatalities on Australian farms. See our article on the recent quad bike WorkSafe policy change here.
One quarter of all mental injury claims are made by workers in the healthcare sector. Further, they are nearly 5 times more likely to lodge an occupational violence claim than other workers. With 95% of healthcare workers experiencing verbal or physical assault, WorkSafe has initiated a campaign called It's Never Ok . This campaign is particularly aimed at reducing occupational violence towards aged care workers, nurses and paramedics.
103 prosecutions were made against employers with a success rate of 90%.
There were 2,608 serious injury applications received in the 2016/17 financial year. This is down by 6.5% from the previous year.
A disappointing trend that emerged from the WorkSafe Annual Report is the increasing consequences of mental injuries and the prolonged claims processes on the Victorian workforce.
Whilst significant headway into the management of physical injuries has resulted in better outcomes for workers, the same cannot be said for psychological injuries.
For advice about your potential rights and entitlements following an injury at work, call our lawyers direct on (03) 9321 9988.
Catherine Sim
catherine.sim@alil.com.au
Practice Director – People and Professional Development


text:
/*function reloadStylesheets() {
    let queryString = '?reload=' + +new Date();
    $('link[rel="stylesheet"]').each(function() {
        this.href = this.href.replace(/\?.*|$/, queryString);
    });
}

document.addEventListener('keyup', function(event) {
    if(event.keyCode === 82)
        reloadStylesheets();
});*/

function pad(number, positions) {
    number = '' + number;
    return number.length < positions ? pad("0" + number, positions) : number;
}

function validateUrl(url) {
    return (/[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/.test(url));
}

function validateTags(tags) {

    if(typeof tags === 'object')
        if(tags.length === 0)
            return true;

    return (/^[a-zA-Z]([a-zA-Z0-9_\s,]+)?[a-zA-Z0-9]$/.test(tags) && tags !== '');

}

// TODO: Implement in MediaManager
let mediaManagerClose = document.querySelector('div.media-manager span.close-manager');
function closeMediaManager() {
    mediaManagerClose.click();
}

function triggerEvent(element, event) {
    element.dispatchEvent(
        new MouseEvent(event, { view: window, cancelable: true, bubbles: true })
    );
}

function initializeCounters() {

    let eventList   = ['change', 'keydown', 'keyup'];
    let counterElements = document.querySelectorAll('div.counter');
    let counterElementsCount = counterElements.length;

    for(let counterElement = 0; counterElement < counterElementsCount; ++counterElement) {

        let current       = counterElements[counterElement];
        const maxLength   = current.getAttribute('data-length');
        let type          = current.getAttribute('data-input');
        let element       = current.parentNode.querySelector(type);

        current.innerText = maxLength;

        function inner() {

            let left          = +maxLength - element.value.trim().length;
            current.innerText = left;

            if(left < 0)
                current.classList.add('minus');
            else
                current.classList.remove('minus');

        }

        for(let event in eventList)
            element.addEventListener(eventList[event], inner);

    }

}

function capitalizeFirstLetter(string) {
    return string.charAt(0).toUpperCase() + string.slice(1).toLowerCase();
}

function showValidationResult(element, locale, hide, callback) {

    let messageBox = element.parentNode.querySelector('span.validate-message');

    if(hide) {
        if(messageBox.innerText === '') return true;
        messageBox.innerText = '';
        messageBox.removeAttribute('data-locale');
        callback();
        return true;
    }

    if(messageBox.getAttribute('data-locale') === locale) return true;

    messageBox.setAttribute('data-locale', locale);
    let loopBreak = false;
    for(let i in translate.locale) {
        for(let j in translate.locale[i]) {
            if(j === locale) {
                messageBox.innerText = translate.locale[i][j];
                loopBreak            = true;
                break;
            }
        }
        if(loopBreak) break;
    }

    callback();

}

// Confirmation box
function confirmAction(action, callback) {

    // Show popup
    let confirmationElement = $('div.confirmation-menu');
    confirmationElement.css({display: 'table'}).animate({opacity: 1}, 150).addClass('open');
    confirmationElement.find('p.confirmation-action-message').html(action);

    // Proceed
    confirmationElement.find('span.confirmation-action-proceed').click(function() {
        callback();
        clearEvents();
        confirmationElement.animate({opacity: 0}, 150).removeClass('open')
            .delay(100).queue(function() {
            $(this).css({display: 'none'}).dequeue();
        });
    });

    // Dismiss
    confirmationElement.find('span.confirmation-action-dismiss').click(function() {
        clearEvents();
        confirmationElement.animate({opacity: 0}, 150).removeClass('open')
            .delay(100).queue(function() {
            $(this).css({display: 'none'}).dequeue();
        });
    });

    function clearEvents() {
        $('span.confirmation-action-proceed').off('click');
        $('span.confirmation-action-dismiss').off('click');
    }

}

// Reload packery
function reloadPackery(timeout) {

    if(!timeout)
        timeout = 0;

    setTimeout(function() {
        packery.packery().reloadItems();
    }, timeout);

}

// AJAX
function postData(link, data, callback) {

    // Show loading message
    responseBox.classList.add('loading');
    responseBox.classList.add('open');
    responseBox.querySelector('span.message-content').innerHTML = translate['locale']['admin_header']['HEADER_LOADING'];

    // Hide loading message
    function hideLoadingMessage() {
        setTimeout(function() {
            responseBox.classList.remove('loading');
            responseBox.classList.remove('open');
            responseBox.querySelector('span.message-content').innerHTML = '';
        }, 400);
    }

    // Send post
    data['csrf_token'] = document.querySelector('meta[name=csrf_token]').getAttribute('content');
    $.ajax({
        url    : link,
        method : 'POST',
        data   : data,
        async  : false,
        success: function(response) {
            callback(response, 'success');
            hideLoadingMessage();
        },
        error  : function(response) {
            callback(response, 'error');
            hideLoadingMessage();
        }
    });

}

// Routes while pretty URLs does not work
let adminRoute      = document.querySelector('meta[name=route]').getAttribute('content');
let baseURI         = '?route='; // While pretty URL does not work
let route           = $('meta[name=route]').attr('content');
let csrf_token      = $('meta[name=csrf_token]').attr('content');
let URI             = baseURI + route + '/';
let locale,
    tmp,
    packery,
    sortable,
    selector,
    languages,
    type,
    typeName,
    componentList,
    components      = [],
    selectors,
    contentElement;
let previousScripts = [];
let responseBox     = document.querySelector('div.response-message');
let body            = document.querySelector('body');
let html            = $('html');
let ckconfig        = {
    language: html.attr('lang'),
    uiColor: '#ffffff',
    extraPlugins: 'autogrow',
    autoGrow_minHeight: 150,
    autoGrow_maxHeight: 700,
    autoGrow_onStartup: true,
    toolbar: [
        {
            name: 'history',
            items: [
                'Undo', 'Redo'
            ]
        },
        {
            name: 'clipboard',
            items: [
                'Cut', 'Copy', 'Paste', 'PasteFromWord'
            ]
        },
        {
            name: 'basic',
            items: [
                'Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript'
            ]
        },
        {
            name: 'lists',
            items: [
                'NumberedList', 'BulletedList', '-', 'Outdent', 'Indent'
            ]
        },
        {
            name: 'justify',
            items: [
                'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock'
            ]
        },
        {
            name: 'links',
            items: [
                'Link', 'Unlink'
            ]
        },
        {
            name: 'advanced',
            items: [
                'HorizontalRule', 'Symbol', 'EqnEditor'
            ]
        },
        {
            name: 'color',
            items: [
                'TextColor', 'BGColor'
            ]
        }
    ]
};

// Update CSRF token every 19 minutes
setInterval(function() {
    ajax(
        baseURI + 'api/system.auth.refresh.token&csrf_token=' + csrf_token,
        'GET',
        false,
        '*',
        function(response) {
            csrf_token = response.data;
            document.querySelector('meta[name=csrf_token').setAttribute('content', response.data);
        },
        function() {
            window.addEventListener('focus', function() {
                confirmAction(translate.locale.response['ACTION_CONFIRM_RELOAD_PAGE'], function() {
                    window.location.reload();
                });
            });
        }
    );
}, 1200000);

// Root URL
let root = window.location.href;
root     = root.split(adminRoute)[0] + adminRoute;

// Translations list
let translations    = ['system', 'response', 'admin_header', 'admin_menu'];
let addTranslations = document.querySelector('div.content-wrapper').getAttribute('data-locales');
addTranslations     = addTranslations.split(' ');
for(let i = 0; i < addTranslations.length; ++i) {
    if(translations.indexOf(addTranslations[i]) !== -1) continue;
    translations.push(addTranslations[i]);
}
let translate = new Translate(translations, false);

// Show anchor-tooltip
html.on('mouseover', '[data-link]', function() {
    let link = URI + this.getAttribute('data-link');
    $('div.anchor-hover').addClass('show').text(link);
});
html.on('mouseleave', '[data-link]', function() {
    $('div.anchor-hover').removeClass('show').text('');
});

// Show response message or action message
// TODO: probably not used anymore idk...
function showMessage(content, type) {

    let code = content;
    if(content === 200)
        content = locale['register'][content];
    else
        content = locale['response'][content];

    let messageBox  = $('div.response-message span.message-content');
    let responseBox = $('div.response-message');
    responseBox.dequeue();
    messageBox.attr('data-locale', code).html(content);
    responseBox.removeClass('success', 'error').removeClass('loading')
        .addClass(type).addClass('open').delay(5000)
        .queue(function() {
            $(this).removeClass('open').dequeue();
        });

}

// Loader Events
function LoaderStart() {

    // Show loading message
    responseBox.classList.add('loading');
    responseBox.classList.add('open');
    responseBox.querySelector('span.message-content').innerHTML = translate['locale']['admin_header']['HEADER_LOADING'];

}

function LoaderError(code) {

    showMessage(code, 'error');

}

function LoaderDone(content, link, menu) {

    // Get translations
    let addTranslations = document.querySelector('div.content-wrapper').getAttribute('data-locales');
    addTranslations     = addTranslations.split(' ');
    for(let i = 0; i < addTranslations.length; ++i) {
        if(translations.indexOf(addTranslations[i]) !== -1) continue;
        translations.push(addTranslations[i]);
    }
    translate.translateLocales(addTranslations);

    // Remove current script
    let scriptName = previousScripts.pop();
    $('script[src="scripts/' + scriptName + '.min.js"]').remove();

    // Add new script
    let newScript = link.split('/')[0];
    $('body').append('<script type="application/javascript" src="scripts/' + newScript + '.min.js"></script>');

    // Change menu selected item
    if(!menu) {
        let menuLink = link.split('/')[0];
        $('nav li').removeClass('active');
        $('li[data-link="' + menuLink + '"]').addClass('active');
    }

    // Remove loading message
    setTimeout(function() {
        responseBox.classList.remove('loading');
        responseBox.classList.remove('open');
        responseBox.querySelector('span.message-content').innerText = '';
    }, 400);

    $('div.anchor-hover').removeClass('show').text('');

}

// Initialize Loader
new Loader({
    domain : 'admin',
    csrf   : 'csrf_token',
    root   : root,
    targets: {
        content   : 'div.content-wrapper',
        subcontent: 'div.content-subcontent',
        full      : 'html'
    },
    onStart: function() {
        LoaderStart()
    },
    onError: function(code) {
        LoaderError(code)
    },
    onDone : function(content, link, menu) {
        LoaderDone(content, link, menu)
    }
});

// Close opened elements on click outside
let closer = new Closer;
let doc    = $(document);
doc.click(function(e) {
    closer.closeElements(e.target);
});

// Open / Close Footer
let footerMore = $('span.footer-more');
footerMore.click(function() {

    let footer = $('footer');
    if(!footer.hasClass('open')) {
        footer.addClass('open');
        closer.addElement(footer);
    } else
        footer.removeClass('open');

});

// Open / Close Account Dropdown
$('div.header-account').click(function() {

    let dropdown = $('div.account-dropdown');
    if(!dropdown.hasClass('open')) {
        dropdown.addClass('open');
        closer.addElement(dropdown);
    }

});

// Open write menu
$('div.header-write').click(function() {

    $('div.fullscreen-wrapper.write-menu').addClass('open');

});

// Close write menu
$('div.write-menu div.tails-tail').click(function() {
    $('div.write-menu span.header-close').click();
});
$('div.write-menu span.header-close').click(function() {

    $('div.fullscreen-wrapper.write-menu').removeClass('open');

});

// Logout
$('.logout').click(function() {
    window.location.href = URI + 'logout';
});

// Add focus to input
html.on('click', 'div.mainline-search div.input-box', function() {
    $(this).find('input').focus();
});

// Window history
window.onpopstate = function(event) {

    let link = event.state.link;
    if(link === '')
        link = 'dashboard';
    $('[data-link="' + link + '"]').click();

};

// Flatpickr datetime picker
function initDatePicker() {

    flatpickr(".datetime-picker", {
        altFormat    : true,
        dateFormat   : 'd.m.Y H:i:s',
        enableTime   : true,
        enableSeconds: true,
        locale       : translate.language,
        disableMobile: true,
        time_24hr    : true
    });

    flatpickr(".datetime-picker-min", {
        altFormat    : true,
        dateFormat   : 'd.m.Y H:i:s',
        enableTime   : true,
        enableSeconds: true,
        minDate      : 'today',
        locale       : translate.language,
        disableMobile: true,
        time_24hr    : true
    });

    flatpickr(".datetime-picker-max", {
        altFormat    : true,
        dateFormat   : 'd.m.Y H:i:s',
        enableTime   : true,
        enableSeconds: true,
        maxDate      : 'today',
        locale       : translate.language,
        disableMobile: true,
        time_24hr    : true
    });

    flatpickr(".date-picker", {
        altFormat    : true,
        dateFormat   : 'd.m.Y',
        locale       : translate.language,
        disableMobile: true
    });

    flatpickr(".date-picker-max", {
        altFormat    : true,
        dateFormat   : 'd.m.Y',
        maxDate      : 'today',
        locale       : translate.language,
        disableMobile: true
    });

    flatpickr(".date-picker-min", {
        altFormat    : true,
        dateFormat   : 'd.m.Y',
        minDate      : 'today',
        locale       : translate.language,
        disableMobile: true
    });

}

// Show / Hide password fields
function initializePasswordToggle() {

    document.querySelectorAll('span.password-show').forEach(function(item) {
        item.addEventListener('click', function(event) {
            let target       = event.target.getAttribute('data-action');
            let inputElement = document.querySelector('input[name=' + target + ']');
            if(inputElement.getAttribute('type') === 'password') {
                inputElement.setAttribute('type', 'text');
                item.classList.add('visible');
            } else {
                inputElement.setAttribute('type', 'password');
                item.classList.remove('visible');
            }
        });
    });

}


text:
Russian officials move closer to shutting down a major human rights group Russian prosecutors are seeking court action to shut down the country's oldest human rights group. They accuse the group known as Memorial of being a foreign agent.
Russian officials move closer to shutting down a major human rights group
November 24, 20215:11 AM ET
Heard on Morning Edition
Rachel Martin
Charles Maynes
Russian prosecutors are seeking court action to shut down the country's oldest human rights group. They accuse the group known as Memorial of being a foreign agent.
In Russia, prosecutors are seeking a court order to shut down that country's oldest human rights group. They're using a law restricting the activities of so-called foreign agents. It's the latest attempt by the Kremlin to shut down potential sources of opposition to President Vladimir Putin. NPR's Charles Maynes joins us now from Moscow. Charles, thanks for being here. Tell us more about this human rights group and the charges that it's facing.
CHARLES MAYNES, BYLINE: Yeah, sure. The group is called Memorial or as Russians say (speaking Russian). It came out of the push for new freedoms in the late Soviet era and is seen as really a foundational brick in post-Soviet Russian civil society. It's essentially an umbrella organization with two main branches in its work, one preserving the historical memory of those caught up in the mass repressions of the Soviet Union and another documenting modern Russia's human rights abuses.
Now, Memorial is right now facing two charges. Prosecutors say the group has violated the terms of a foreign agent law for accepting foreign funding. Meanwhile, a separate case accuses Memorial's human rights wing of promoting extremism by raising awareness about political prisoners in Russia today. Memorial disagrees with both but says it's trying to abide by the foreign agent law, even paying earlier court-ordered fines thanks to public donations. The problem here is the law is so opaque that prosecutors constantly dig up new violations, and they're saying - asking the courts to liquidate Memorial entirely because of them.
MARTIN: And this isn't the first time this accusation of being a foreign agent has been used by the state, right?
MAYNES: You know, it's not. Memorial's just the latest victim in a way. It's a number of organizations and individuals have been designated foreign agents by the state in recent years. The result is that you've had organizations declared illegal, outlets shut down and even people, individuals, forced to identify themselves as foreign agents every time they, say, you know, post on social media or face fines and possibly go to prison for that. The authorities argue Russia is simply copying an American foreign agents law. But, you know, there's no question they've applied it in such a broad way that it's being used to clamp down on inconvenient voices like Memorial.
MARTIN: Right. Is the Kremlin talking about this case at all?
MAYNES: Well, the Kremlin spokesman says they expect Memorial to follow the law and that it's up to the courts to decide. But this pressure on Memorial is widely seen as political. If you, you know, just step back for a moment, Putin's Russia tries to tell a story of a country really cloaked in triumph, none more so than the Soviet victory over Nazi Germany in World War II. And, you know, Memorial serves as, you know, this constant reminder of the darker chapters of the Soviet period, including the fate of some 20 million people who were arrested and murdered by their own government.
MAYNES: You know, I spoke with Andrei Kolesnikov of the Moscow Carnegie Center who told me that, in this way, Memorial undermines the core mythology of the Putin regime.
ANDREI KOLESNIKOV: The legitimacy of this regime is founded on the past, only on the basis of former achievements, achievements of the Soviet Union. And Memorial is spoiling this simple and understandable nostalgia which Putin creates.
MARTIN: I mean, based on that, I have to admit I'm sort of surprised that this organization has been allowed to operate at all considering the potential threat it poses to the Putin regime. I mean, at this point, how do these court cases, how do they move through the system?
MAYNES: Yeah, I think you're right. It signals the kind of shifting political terrain here, but these two cases are moving forward. Thursday is a hearing into the foreign agents violations. The extremism case was pushed back to next week. And Memorial is rallying its supporters, including a former Soviet leader, Mikhail Gorbachev, in an effort to get the state to drop both cases. But what happens if Memorial loses? Well, you know, President Putin doesn't deny the Soviet repressions ever happened, but it certainly would signal a watershed moment in efforts to control who tells the story of Russia's past and, just as importantly, how it's told.
MARTIN: All right. NPR's Charles Maynes in Moscow, thank you for this. We appreciate it.
MAYNES: Thank you.
(SOUNDBITE OF RECONDITE'S "HARBINGER")


The Rev. Roger Dan Hyatt, age 74, of Copperhill, passed away Sunday, August 12, 2018, in Blue Ridge.
He was born November 22, 1943, in Copperhill to the late James Daniel Hyatt and Isabella Deal Hyatt. The Rev. Hyatt began his ministry in 1970. He established the Pantertown Church of God of Prophecy in 1973. The Rev. Hyatt was the pastor and a member of Pantertown Church of God of Prophecy. He retired from Tennessee Chemical Company as a roasters foreman. The Rev. Hyatt and his wife, Carol, were the owners and operators of Roger and Carol's Quick Burger. He loved deer hunting, fishing, spending time with his family, camping out and was a Tennessee Volunteers fan.
He is survived by wife of 55 years, Carol Brown Hyatt of Copperhill, Tennessee; three sons and daughters-in-law, Roger Bradford "Brad" (Treva) Hyatt of Turtletown, Tennessee, Rodney Dan (Heidi) Hyatt of Copperhill, Tennessee and David Wayne (Rhonda) Hyatt of Copperhill, Tennessee; three brothers and sister-in-law, Ralph Hyatt, Walter (JoAnn) Hyatt and Ricky Hyatt; sister, Karen Hyatt Stillwell; grandchildren, Andrew Hyatt, Amanda Hyatt, Adam (Myra) Hyatt, Christopher Hyatt, Caitlyn Hyatt (Jacob) Bettis, Chase Hyatt, Brittany Hyatt, Brianna Hyatt (Jordan) Farmer, Nathan Hyatt and Ashley Hyatt and great-grandchildren, Carson Rehagen, Cannon Rehagen, Caleb Rehagen, Alexis Hyatt, Addison Hyatt, Alivia Hyatt, Kinsley Ross, Hayden Hughes, Danner Hyatt and Neyland Farmer also survive.
Funeral services were conducted Wednesday, August 15, 2018, at 2 p.m., from Akins Funeral Home of Copperhill Chapel with the Rev. Todd Chancey and the Rev. Gary Smith officiating. Music was by Treva Hyatt, Heidi Hyatt and Rhonda Hyatt. Interment followed in the Pantertown Church of God of Prophecy Cemetery. Pallbearers were: Brad Hyatt, Rodney Hyatt, David Hyatt, Andrew Hyatt, Adam Hyatt, Christopher Hyatt, Nathan Hyatt and Chase Hyatt. Honorary Pallbearers were: Jordan Farmer, Rodney Ross, Jacob Bettis, Ralph Hyatt, Walter Hyatt and Ricky Hyatt.
In lieu of flowers, memorial contributions may be made to Pantertown Church of God of Prophecy at 145 Cougar Drive, Copperhill, Tenn., 37317. Condolences may be sent to the family online at www.akinsfuneralhome.com. Akins Funeral Home of Copperhill was in charge of the arrangements.


I have a confession: I am really bad about checking my mail. In fact, I go weeks and sometimes a month or more without checking it. So when our Peruvian Scottie friend Plutonio and his mom sent us this adorable Christmas gift, I didn't discover it until after the holidays had already come and gone! Shame on me, Scottie Mom! Not only was the gift itself a surprise, but I quickly learned that if you put hot water in the cup, another surprise awaits: the deep red color fades away and the photos turn from black and white to color! I just thought this was the coolest thing ever and had to share. Kudos to you, Plutonio's Scottie Mom! And many thanks for this adorable mug. How can I not love it? It's got two of my favorite Scottie faces all over it!
Nice mug! You better check your mail more often-don't let the utility bill slip otherwise H&K will be cold in the winter and overheated in the summer.
LOL @Kyla - no worries. All of our bills are received and paid for electronically!
What a cute present! And very cool how it changes colors.
Oh wow! That sounds so cool!
I want - is there a website?? They are too cute!!


In 2006, Punjab Education Foundation (PEF) launched its Education Voucher Scheme (EVS) with an aim to bring education to children belonging to less affluent and underprivileged families, who would otherwise have been deprived from the benefits of schooling. The scheme has been lauded for thoughtful targeting of beneficiaries, appropriate design of incentives for participating schools and built-in learning-based targets that have addressed an important issue of out of school children.
Abstract: The teacher always made us sit in a corner of the room, and would throw keys at us [when she was angry]. We only got food if anything was left after other children were served…. [G]radually [we] stopped going to school. — Shyam, 14, Dalit boy from Uttar Pradesh now working at a brick kiln, April 2013.
In 2009, India enacted the Right of Children to Free and Compulsory Education Act, which provides for free and compulsory education to all children aged 6 to 14 based on principles of equity and non-discrimination. For a country that six decades ago at independence had staggering poverty and illiteracy levels, this was an overdue but ambitious step to meet its domestic and internationally recognized obligations to its children. It also testified to India's increasing confidence as an emerging economy with one of the youngest and largest work forces in the world.
However, four years after it came into force, the Right to Education Act is yet to be properly implemented.
RAMPUR, India—At the government school in this north Indian village, 8-year-old Dilip Banwasi is being taught his place. His third-grade teacher makes him sweep the classroom floor and sit in the back row.
Only four per cent of parents from economically weaker sections (EWS) are aware about the availability of 25 per cent seats under EWS category in the capital's private schools, under the RTE Act, a study has shown.
Head Start, the federally funded preschool program for low-income children, has experienced more change in the past three years than in the previous 40. After years of debate about the program's quality and value, there's an accountability revolution coming to preschool.
Should Students Sit on School Boards?
For centuries, students have been agents of social change, their passion and idealism forming a critical part of the historical landscape; a lesson that, in education, teachers and administrators ignore at their peril. But figuring out how best to appropriate student interests raises difficult questions. Do students belong on school boards?


text:
Jim O'Connell | The Associated Press | November 2, 2016
Grayson Allen, Josh Hart headline AP preseason All-Americans
Duke point guard Grayson Allen was the top vote getter with 61.
Josh Hart is off to a stellar start as a member of the defending national champions.
The 6-5 swingman from Villanova will begin his senior season on The Associated Press' preseason All-America team.
Hart, the Big East's preseason player of the year, received 53 votes from the same 65-member national media panel that selects the weekly Top 25.
Grayson Allen of Duke was the top vote-getter with 61, four more than Ivan Rabb of California.
Dillon Brooks of Oregon had 30 votes and Monte Morris of Iowa State had 24.
Oregon lands its first ever A.P. Preseason all-American in @dbrookz8 - one of 3 Pac-12 players on the squad. https://t.co/DUQPrY7zWH pic.twitter.com/FMkuE1yW2E
— Oregon Basketball (@OregonMBB) November 2, 2016
Sophomore Thomas Bryant of Indiana and freshmen Markelle Fultz of Washington and Josh Jackson of Kansas all received 18 votes.
Hart averaged 15.5 points and 6.8 rebounds last season for the Wildcats, who beat North Carolina in the title game on a buzzer-beating 3-pointer by Kris Jenkins.
The last Wildcat to be a preseason All-America was Kerry Kittles in 1995-96, the first season the AP had a preseason team.
The 6-5 Allen, a junior and one of four veterans on the Blue Devils' roster which is loaded with freshmen stars, averaged 21.6 points, 4.6 rebounds and 3.5 assists last season, shooting 41.7 percent from 3-point range and 88.7 from the free throw line.
MORE: Unorthodox lineups that the top four teams should consider using
It hasn't been long since a Blue Devil made the team as freshman Jahlil Okafor was on it in 2015-16.
Morris is the second Cyclone in two years to make the team. He joins Georges Niang who was on it last season. The 6-3 Morris averaged 13.8 points, 3.9 rebounds and 6.9 assists as a junior and Iowa State reached as high as No. 4 in the poll last season.
Neither Cal nor Oregon has had a member of the preseason team. That changes with Rabb and Brooks, the second straight season there was two players from the same conference as Niang and Buddy Hield of Oklahoma were from the Big 12.
Rabb, a 6-11 sophomore, averaged 12.5 points and 8.6 rebounds while shooting 61 percent from the field for the Golden Bears.
Brooks, a 6-7 junior, averaged 16.7 points and 5.4 rebounds for the Ducks, who finished fifth in the final poll.
Hield was the only player last season to make both the preseason and postseason All-America teams. Joining the senior guard on last season's preseason team were seniors Kyle Wiltjer of Gonzaga and Niang, junior Kris Dunn of Providence and freshman Ben Simmons of LSU.
This article was written by Jim O'Connell from The Associated Press and was legally licensed through the NewsCred publisher network.
1 moment to celebrate from every 2019 March Madness game
These are the best moments from the 2019 NCAA men's basketball tournament
Football student-athlete connection group to hold first conference call
With the goal of receiving more feedback from student-athletes, the Division I Football Oversight Committee Student-Athlete Connection Group was formed and will hold its first teleconference call on Sunday.


Challenge coins have been used for symbols of camaraderie and recognition since World War I. Although challenge coins have been most popular with the military, they are also used in law enforcement, private clubs, corporations and sports organizations. Choose one sided or two sided among other available options to individualize your coin.


text:
Documentation of Home Life
Nikki McClure is a DIY maven, but her art is museum-worthy; see it at the Museum of Contemporary Craft.
By Kristin Belz 10/14/2011 at 6:00pm
Nikki McClure's paper cut art depicts the simple activities of home life.
In some ways, Nikki McClure is the poster child of DIYers, but the DIY part of her story might be a distraction from the beauty and power of her art. Yes, she makes art that is accessible to all and regularly hangs in people's kitchens – her annual calendar, which she's done for the past dozen years. She's self-taught, starting out in the free-wheeling 1990s Oly,WA scene, home of Evergreen State College, K Records, and (back then) Riot Grrrls making music.
And yes, she has worked long and hard to develop her unique talents, gradually gaining recognition from the grass roots up, by word of mouth and the pure artistry of the humane visual art she makes. Her artistic technique? She cuts paper with an x-acto knife. Simple, right? Anybody can cut paper. It's totally DIY-able.
But more broadly, what she does is depict and record home life, expressing its simple and timeless pleasures, in ways that many of us can relate to, if wishfully at times. She also helps us record our own home lives, with her books on a child's first 1000 days, cooking at home, and other humble, universal activities.
It is great to see that a mainstream museum has mounted a retrospective of 15 years of her work. The museum is here in Portland, not far from what is still her home base, about 110 miles north up I-5 from here, in Olympia, Washington. The Museum of Contemporary Craft exhibit continues through October 29. McClure's depictions of harvests and home chores seem especially well timed for autumn viewing.
Her by now well-known annual calendar is both timely and timeless. It used to be you had to search it out (off the beaten track places like Reading Frenzy and In Other Words were dependable sources). When I saw it at New Seasons a few years back, I knew she'd arrived. I've got stacks of her old calendars, or at least certain pages of them, in my future-projects-files. Somehow, I can never throw the old calendars away. They beg to be reused as wrapping paper, stationery, framed artwork, gift tags…
About the first calendar she produced, in 1998 (she printed it at Kinko's), she says, "I focused on things that could be foraged for during each month. It provided direction plus I liked the idea that it would be utilitarian. A calendar also ends up in kitchens and I like thinking of all the kitchens they are hanging in and all the goings on and good food they are witness to…"
She is so right. Always the new calendar goes in my kitchen. Flipping the page to a new month is a ritual of my family home life, and I thank her for helping me appreciate that life.
Portland Art, Arts News, Arts and Culture, Art, Arts
Portland Fashion Institute Doubles in Size as Other Fashion Schools Shutter
04/16/2019 By Eden Dawn
Portland Real Estate Guide 2019
03/26/2019 Edited by Ramona DeNies
Could the Industrial East Side Become Portland's Mural District?
06/25/2019 By Sam Pape
Tender Loving Empire Launches Kids Apparel Line


text:
Home > Journals > HWI > Vol. 13 (2019) > Iss. 3
Comparison of Conservation Policy Benefits for an Umbrella and Related Sagebrush-Obligate Species
Jonathan B. Dinkins, Oregon State UniversityFollow
Jeffrey L. Beck, University of WyomingFollow
Many conservation strategies promote the potential of multiple species benefitting from protection of large areas necessary for the continued viability of 1 species. One prominent strategy in western North America is Wyoming's Sage-grouse Core Area Policy, which was designed to conserve greater sage-grouse (Centrocercus urophasianus; hereafter, sage-grouse) breeding habitat, but may also serve as an umbrella to conserve other sagebrush (Artemisia spp.)-obligate wildlife, including songbirds. Sagebrush-obligate songbirds and sage-grouse have undergone population declines throughout the western United States attributed to similar habitat issues. We compared trends of sagebrush-obligate songbirds from the Breeding Bird Survey and sage-grouse lek counts in 2 sage-grouse populations in Wyoming (Powder River Basin and Wyoming Basins), USA from 1996–2013. Our evaluation was focused on similarities among population performance of the umbrella species and the species under that umbrella. Sagebrush-obligate songbird and both sage-grouse populations occupied habitat within and outside of protected core areas. Trends of sagebrush-obligate songbirds were not parallel or consistently similar in trajectory to sage-grouse in either core or non-core areas. Our results indicated core areas were successful at maintaining higher sage-grouse trends compared to areas not protected under the core area policy. However, sagebrush-obligate songbird trends did not follow the same pattern. This suggests that protection of only the best sage-grouse habitat may not be a sufficient conservation strategy for other sagebrush-obligate birds.
Dinkins, Jonathan B. and Beck, Jeffrey L. (2019) "Comparison of Conservation Policy Benefits for an Umbrella and Related Sagebrush-Obligate Species," Human–Wildlife Interactions: Vol. 13 : Iss. 3 , Article 13.
DOI: https://doi.org/10.26077/4ypp-vj89
Available at: https://digitalcommons.usu.edu/hwi/vol13/iss3/13
Ornithology Commons, Population Biology Commons, Terrestrial and Aquatic Ecology Commons
https://doi.org/10.26077/4ypp-vj89
Purpose & Scope
Subscribe or Advertise
All Issues Vol. 13, Iss. 3 Vol. 13, Iss. 2 Vol. 13, Iss. 1 Vol. 12, Iss. 3 Vol. 12, Iss. 2 Vol. 12, Iss. 1 Vol. 11, Iss. 3 Vol. 11, Iss. 2 Vol. 11, Iss. 1 Vol. 10, Iss. 2 Vol. 10, Iss. 1 Vol. 9, Iss. 2 Vol. 9, Iss. 1 Vol. 8, Iss. 2 Vol. 8, Iss. 1 Vol. 7, Iss. 2 Vol. 7, Iss. 1 Vol. 6, Iss. 2 Vol. 6, Iss. 1 Vol. 5, Iss. 2 Vol. 5, Iss. 1 Vol. 4, Iss. 2 Vol. 4, Iss. 1 Vol. 3, Iss. 2 Vol. 3, Iss. 1 Vol. 2, Iss. 2 Vol. 2, Iss. 1 Vol. 1, Iss. 2 Vol. 1, Iss. 1


1. In each Member State, motor vehicles registered in that State and their trailers and semi-trailers shall undergo periodic roadworthiness tests in accordance with this Directive and in particular its Annexes I and II.
2. The categories of vehicles to be tested, the frequency of the roadworthiness tests and the items which must be tested are listed in Annexes I and II.
The roadworthiness tests provided for in this Directive shall be carried out by the State, or by a public body entrusted with the task by the State or by bodies or establishments designated and directly supervised by the State, including duly authorized private bodies. In particular, when establishments designated as vehicle testing centres also perform motor vehicle repairs, Member States shall make every effort to ensure the objectivity and high quality of the vehicle testing.
1. Member States shall take such measures as they deem necessary to make it possible to prove that a vehicle has passed a roadworthiness test complying with at least the provisions of this Directive.
These measures shall be notified to the other Member States and to the Commission.
2. Each Member State shall, on the same basis as if it had itself issued the proof, recognize the proof issued in another Member State showing that a motor vehicle registered on the territory of that other State, together with its trailer or semi-trailer, have passed a roadworthiness test complying with at least the provisions of this Directive.
3. Member States shall apply suitable procedures to establish, as far as practicable, that the brake performance of the vehicles registered in their territory meets the requirements specified in this Directive.
1. Member States shall have the right to exclude from the scope of this Directive vehicles belonging to the armed forces, the forces of law and order and the fire service.
2. Member States may, after consulting the Commission, exclude from the scope of this Directive or subject to special provisions, certain vehicles operated or used in exceptional conditions and vehicles which are never, or hardly ever, used on public highways, including vehicles of historic interest manufactured before 1 January 1960 or which are temporarily withdrawn from circulation.
3. Member States may, after consulting the Commission, set their own testing standards for vehicles considered to be of historic interest.
- require for vehicles registered on their territory higher minimum standards for braking efficiency than those specified in Annex II and may include a test on vehicles with heavier loads provided such requirements do not exceed those of the vehicle's original type-approval.
provided that all the light commercial vehicles referred to in section 5 of Annex I are required to undergo roadworthiness tests in accordance with this Directive before that date.
However, in Member States where there was no system of regular roadworthiness testing comparable to that intended by this Directive for this category of vehicles as at 28 July 1988, paragraph 1 shall apply until 1 January 1995.
2. With regard to the private cars referred to in section 6 of Annex I, paragraph 1 shall apply until 1 January 1994.
However, in Member States where there was no system of regular roadworthiness testing comparable to that intended by this Directive for this category of vehicles as at 31 December 1991, paragraph 1 shall apply until 1 January 1998.
1. The Council, acting by a qualified majority on a proposal from the Commission, shall adopt the separate Directives necessary to define the minimum standards and methods for testing the items listed in Annex II.
2. Any amendments which are necessary to adapt the standards and methods defined in the separate Directives to technical progress shall be adopted in accordance with the procedure laid down in Article 8.
1. The Commission shall be assisted by a committee on the adaptation to technical progress of the Directive on roadworthiness tests for motor vehicles and their trailers, hereinafter referred to as the 'Committee`, which shall consist of representatives of the Member States with a representative of the Commission in the chair.
3. The representative of the Commission shall submit to the Committee a draft of the measures to be taken. The Committee shall deliver its opinion on the draft within a time limit which the chairman may lay down according to the urgency of the matter. The opinion shall be delivered by the majority laid down in Article 148 (2) of the Treaty in the case of decisions which the Council is required to adopt on a proposal from the Commission. The votes of the representatives of the Member States within the Committee shall be weighted in the manner set out in the abovementioned Article. The chairman shall not vote.
If, within three months of the submission of the proposal to the Council, the Council has not acted, the proposed measures shall be adopted by the Commission.
1. The Commission shall, no later than 31 December 1998, submit a report to the Council on the implementation of roadworthiness testing of private cars, accompanied by any proposal deemed necessary, with particular reference to the frequency and content of tests.
2. No later than three years after the introduction of regular testing of speed limitation devices, the Commission shall examine whether, on the basis of the experience gained, the tests laid down are sufficient to detect defective or manipulated speed limitation devices or whether the rules need to be amended.
The Directives listed in Annex III, Part A are hereby repealed as from the date indicated in Article 11, without prejudice to the obligations of the Member States concerning the deadlines for transposition and implementation set out in Annex III, Part B.
References to the repealed Directives shall be construed as reference to this Directive and should be read in accordance with the correlation tables set out in Annex IV.
1. Member States shall bring into force the laws, regulations and administrative provisions necessary to comply with this Directive no later than 9 March 1998. They shall forthwith inform the Commission thereof.
When Member States adopt these provisions, they shall contain a reference to this Directive or be accompanied by such reference at the time of their official publication. The methods of making such reference shall be laid down by Member States.
3. Member States shall adopt the measures necessary to implement the system of tests laid down in this Directive. The measures adopted must be effective, proportionate and dissuasive.
(1) OJ No C 193, 4. 7. 1996, p. 5 and 31.
(2) OJ No C 39, 12. 2. 1996, p. 24.
(3) European Parliament opinion of 29 February 1996 (OJ No C 78, 18. 3. 1996, p. 27), Council common position of 18 June 1996 (OJ No C 248, 26. 8. 1996, p. 49) and European Parliament Decision of 24 October 1996 (OJ No C 347, 18. 11. 1996).
(4) OJ No L 47, 18. 2. 1977, p. 47. Directive as last amended by Commission Directive 94/23/EC (OJ No L 147, 14. 6. 1994, p. 6).
(5) Council Directive 71/320/EEC of 26 July 1971 on the approximation of the laws of the Member States relating to the braking devices of certain categories of motor vehicles and their trailers (OJ No L 202, 6. 9. 1971, p. 37). Directive as last amended by Directive 91/422/EEC (OJ No L 233, 22. 8. 1991, p. 21).
(6) Council Directive 92/6/EEC of 10 February 1992 on the installation and use of speed limitation devices for certain categories of motor vehicles in the Community (OJ No L 57, 2. 3. 1992, p. 27).
The test must cover at least the items listed below, provided that these are related to the obligatory equipment of the vehicle being tested in the Member State concerned.
The tests covered by this Annex may be carried out visually without disassembly of vehicle parts.
Where the vehicle is found to be defective with regard to the test items below, the competent authorities in the Member States must adopt a procedure for setting the conditions under which the vehicle may be used before passing another roadworthiness test.
1. Visual inspection of the exhaust system in order to check that there are no leakages.
2. If appropriate, visual inspection of the emission control system in order to check that the required equipment has been fitted.
After a reasonable period of engine conditioning (taking account of the vehicle manufacturer's recommendations) the carbon monoxide (CO) content of the exhaust gases is measured when the engine is idling (no load).
- for vehicles registered or put into service for the first time after 1 October 1986: CO - 3,5 % vol.
1. Visual inspection of the exhaust system in order to check that there are no leakages and that all parts are complete.
2. Visual inspection of the emission control system in order to check that the required equipment has been fitted.
The maximum permissible CO content in the exhaust gases is that stated by the vehicle manufacturer. Where this information is not available, the maximum CO content must not exceed 0,5 % vol.
Lambda: 1 ± 0,03 in accordance with the manufacturer's specifications.
or equivalent values where use is made of equipment of a type different from that used for EC type-approval.
8.2.4. Where, during EC type-approval, a type of vehicle is found not to have satisfied the limit values laid down by this Directive, the Member States may lay down higher limit values for that type of vehicle on the basis of proof supplied by the manufacturer. They must forthwith inform the Commission thereof and it in turn must inform the other Member States.
(1) Council Directive 70/220/EEC of 20 March 1970 on the approximation of the laws of the Member States relating to measures to be taken against air pollution by emissions from motor vehicles (OJ No L 76, 9. 3. 1970, p. 1) and corrigendum (OJ No L 81, 11. 4. 1970, p. 15), as last amended by European Parliament and Council Directive 94/12/EC (OJ No L 100, 19. 4. 1994, p. 42).
(2) Council Directive 72/306/EEC of 2 August 1972 on the approximation of the laws of the Member States relating to the measures to be taken against the emission of pollutants from diesel engines for use in vehicles (OJ No L 190, 20. 8. 1972, p. 1), Directive as last amended by Commission Directive 89/491/EEC (OJ No L 238, 15. 8. 1989, p. 43).


text:
Michaël Ghijs (Gent, 8 oktober 1933 - Aalst, 21 februari 2008) was kanunnik, leerkracht en dirigent.

Schola Cantorum Cantate Domino van het Sint-Maarteninstituut
Kort na zijn priesterwijding, op 23 mei 1959, werd Ghijs leerkracht godsdienst aan het Sint-Maarteninstituut (het "Klein College") te Aalst. Hij bleef dit doen tot aan zijn pensionering.

In 1960 stichtte hij een schoolkoor met leerlingen van het college, het knapenkoor Schola Cantorum Cantate Domino. Mede door de gedrevenheid van Ghijs verwierf dit knapenkoor internationale bekendheid. Het koor gaf voorstellingen in vele Europese centra maar ook onder meer in de Verenigde Staten, Egypte, India en Rusland.

Het knapenkoor verzorgde ook verschillende producties onder dirigenten zoals Claudio Abbado, Pierre Bartholomée en Philippe Herreweghe. Van 1994 tot 1997 voerde het koor de titel van Cultureel Ambassadeur van Vlaanderen.

Ghijs was met de Schola Cantorum Cantate Domino verscheidene malen te gast in het Vaticaan, waar ze in audiëntie werden ontvangen door paus Johannes Paulus II.

Verdiensten

Van 1993 tot 1999 was Michaël Ghijs dirigent van de Schola Cantorum van de Sint-Baafskathedraal in Gent.

Vanaf 23 oktober 1993 was Ghijs zondagsmedepastoor van de Heilig Hartparochie in Aalst.

Een grote verdienste van Ghijs is dat hij gedurende 48 jaar onophoudelijk jongeren van velerlei afkomst in contact heeft gebracht met klassieke muziek. Vele van zijn zangers bouwden na hun tienerjaren een professionele carrière uit in de wereld van de muziek.

Voor zijn verdiensten ontving Ghijs in 2002 van de bisschop van Gent de eretitel kanunnik van de Sint-Baafskathedraal. Op 26 januari 2004 werd hij ereburger van de stad Aalst. In 2005 ontving hij de onderscheiding van Commandeur in de Leopoldsorde. Michaël Ghijs was tevens erelid van Rotary Club Aalst NO.

Belgisch dirigent
Erekanunnik


text:
Home The Reel Youth Film Festival
The Reel Youth Film Festival
Sep 25, 2019 6:30 PM to 8:30 PM
Caetani Centre 3401 Pleasant Valley Road, Vernon, British Columbia V1T 4L4
Real Vernon Youth Screen Short Films Locally Alongside screenings of internationally acclaimed youth-made films at the Caetani Cultural Centre
"The Reel Youth Film Festival is an opportunity for audiences to see the best of youth filmmaking while gaining insight into youth culture and the issues affecting young people today," describes Festival Director Zoe Miles.
16 local youth, excited about filmmaking and interested in using film for social change, learned how to plan, produce, and edit in small teams over an intensive five days in a free video production program in Vernon, BC.
They created 5 short, issue-based films that will be screened locally in Vernon.
The local films include a documentary featuring Armstrong-raised drag artist Romi Kim, a youth response to vandalism of a community rainbow crosswalk, a music video about the power of music, a documentary about the ethics of coffee, and, just for fun, a scary movie set in the Vernon woods.
Come meet the filmmakers and enjoy an intimate screening of their work as well as some of the best youth film making from around the world on Wednesday September 25th, 6:30pm at the Caetani Cultural Centre's Studio Gallery.
"The world looks very different to young people 19 and under. We have films from Iran, Lithuania, South Korea, and India, and they give us rare insight into the next generation of leaders, change-makers, and visual artists. They're also so compelling, funny, courageous and inspirational," enthuses Miles.
The Reel Youth Film Festival is a project of Reel Youth, a registered Canadian non-profit whose mandate is to empower young people through the media arts. Reel Youth's facilitators deliver issue-based claymation and video making programs to youth groups throughout Canada and the world.
The Caetani Cultural Centre, former home of renowned artist, writer, mentor and teacher Sveva Caetani, provides a venue for artists from around Canada and the world to explore a diverse range of arts practices, theories and experiences through Residency programs, workshop series and more.
For more information please visit our website www.caetani.org or contact the Caetani Centre at 250-275-1525.
The Reel Youth film program was funded by Telus Storyhive and made possible with the support of Caetani Centre. The BC Motion Picture Society has rated the Reel Youth Film Festival PG.
Location Caetani Centre 3401 Pleasant Valley Road, Vernon, British Columbia V1T 4L4
Event Type Film Screening
Date & Time Sep 25, 2019 6:30 PM to 8:30 PM


text:
Health Issues and Socio - Economic Status
Conclusions Maternal depression and SES interact with permissive parenting style to predict child obesity. Differences in eating behaviour, well-being and personality between mothers following baby-led. The thematic areas are as follows: territory, identity, socio-economic issues, autonomy, self-government and
Anthropology news article
London: Routledge and Kegan Paul. "Interview of Mary Douglas". External links edit The Moving Anthropology Student Network (masn) - website offers tutorials, information on the subject, discussion-forums and a large link-collection for all interested scholars of social anthropology.
1984 A Bleak Prediction of the Future
93 In a 2007 interview, Gibson revealed that Sterling had an idea for "a second recursive science novel that was just a wonderful idea but that Gibson was unable to pursue the collaboration because he was not creatively
Illustrated Man
Illustrated Man, view All, the Illustrated Man, news. Audience Reviews for, the Illustrated Man, view All Audience Reviews. The Illustrated Man, photos, view All Photos (1 movie Info. Illustrated Man by Ray Bradbury, theBestNotes Study Guide by Mescallado
Uncles Tom Cabin
The Tom is presented as a smiling, wide-eyed, dark skinned server: fieldworker, cook, butler, porter, or waiter. Robboy and Anita. Open letter to Cornel West the other Uncle Toms from the African United Front. Producers who wanted to
Do they Know to much?
And all I know, is they don't know a thing. Maybe the communication is poor between you and the one who puts pressure on you. Whether its parents or at a workplace, people will push you to your
The United States Civil Rights Movement
nonviolence as "strictly a tactic, not a way of life without limitations." Similarly, Robert Moses, who was also an active member of sncc, felt that the method of nonviolence. 106109 Christopher Strain, Pure Fire:Self-Defense as Activism in the Civil Rights Era (University of Georgia Press, 2005. This is how the African-American Civil Rights Movement of began. New York: Oxford University Press. It helped to get five federal laws and two amendments to the Constitution passed. The American Historical Review (Yale University Press) 111 (3 870-871. In 1948, they gained integration in the military under President Harry Truman, who issued Executive Order 9981 to accomplish.
They also would not rent apartments in white areas. It took a special act of the governor and cabinet of Florida to release them after national protests by the Pittsburgh Courier, Jackie Robinson, and others. 46 Meredith survived harassment and isolation at the college and graduated on August 18, 1963, with a a degree in political science. King elected to be among those arrested on April 12, 1963.
1 Especially in the South, many white people kept using the less respectful word "colored." 1 The word "African-American" did not become common until the late 1980s. All Deliberate Speed: Reflections on the First Half Century of Brown. When Fannie Lou Hamer spoke to Harlemites about the Jim Crow violence that she'd suffered in Mississippi, she linked it directly to the Northern police brutality against blacks that Malcolm protested against; 137 When Malcolm asserted that African Americans should emulate the Mau Mau army. Tyson, "Robert Franklin Williams: A Warrior For Freedom, 19251996" Archived July 8, 2013, at the Wayback Machine., Southern Exposure, Winter 1996, Investigating.S. Mamie Till, Emmett's Mother, "brought him home to Chicago and insisted on an open casket.
Media Piracy and the United States Economy, Cyberlaw in the United States,
Wallace stephans SUNDAY MORNING
Nature Vs. Nurture Theories
Chaucers attitude towards wealth
The Traditional Religion On Modern Society
The Sounds of Apocalypse Now
English Essay: The Truman Show
Therapeutical Marijuana
Analysis on Cory Bookers Career
1950s Movie Industry
Events Leading up to the Revolutionary War
The Hindu Teachings
Divine Dialogues Comparing Job and Arjuna
Comparing Apples and Oranges
Chinese Labor on the Transcontinental Railroad
A Debate on Evolution Vs. Creation
Virtue Ethics and Great Philosophers
The Essence of Democracy
Violence in Mass Media
Irony in 1984 by George Orwell
St. Elizabeth of Hungry
Biography of Andrew Jackson
Fanny Fern: A Woman Ahead of Her Time
Exploration of the New World
Impairment of IFRS and US GAAP
kapalog.eu 2018 - The United States Civil Rights Movement


text:
Q: VBA to change cell value based on drop down selection I'm really not fantastic with VBA and have finally come to a halt.
I'm trying to automatically change 2 cell values (in the same row) based on what selection I make from a drop down.
Column L - Drop down consists of Won, Lost, Quote

Column H - GO%

Column I - GET%

What I'm trying to achieve -
If "Won" selected, then GO and GET cells equal 100%

If "Lost selected, then GO and GET cells equal 0%

I can use this formula to achieve the result but I also need users to be able to manually enter data into the GO and GET cells, effectively wiping the formula =IF($L5="Won",1,IF($L5="Lost",0,""))
My data starts in row 5 but I'll need this to loop as I have 500 rows of the same.
Thanks so much in advance if anyone can help :)
screenshot of the spreadsheet

A: With the code below you can select your drop list and column and automatically the value on col H & I will be compiled, otherwise if guy change the value on cell H or I the Dropdown item (in the same row) change to "Quoted", to immediate see all changing.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim controlRng, nRng As Range
    Set controlRng = Range("L2:L500", "H2:I500")
    Set nRng = Intersect(controlRng, Target)
Application.EnableEvents = False
    If nRng Is Nothing Then Exit Sub

    Select Case Target.Column
    Case 12
        If Target.Value = "Won" Then
            Target.Offset(0, -4) = 1
            Target.Offset(0, -3) = 1

        ElseIf Target.Value = "Lost" Then
            Target.Offset(0, -4) = 0
            Target.Offset(0, -3) = 0
        Else
            'Do Something
        End If
    Case 8
        Target.Offset(0, 4) = "Quoted"
    Case 9
        Target.Offset(0, 3) = "Quoted"
    End Select
Application.EnableEvents = True
End Sub

A: This code will be trigger when the cell's value change, if the target fall in controlRng
Below code cannot add in Module, must be attach with the worksheet you applied Dropdown list.
In my example is Sheet1, as shown below:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim controlRng, nRng As Range
    Set controlRng = Range("E2:E500")
    Set nRng = Intersect(controlRng, Target)

    If nRng Is Nothing Then Exit Sub

    If Target.Value = "Won" Then
        Target.Offset(0, -4) = 1
        Target.Offset(0, -3) = 1

    ElseIf Target.Value = "Lost" Then
        Target.Offset(0, -4) = 0
        Target.Offset(0, -3) = 0
    Else
        'Do Something
    End If

End Sub

redpajama_set_name: RedPajamaStackExchange


text:
package org.netling.sftp;

import java.io.Closeable;
import java.io.IOException;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public abstract class RemoteResource
        implements Closeable {

    /** Logger */
    protected final Logger log = LoggerFactory.getLogger(getClass());

    protected final Requester requester;
    protected final String path;
    protected final String handle;

    protected RemoteResource(Requester requester, String path, String handle) {
        this.requester = requester;
        this.path = path;
        this.handle = handle;
    }

    public String getPath() {
        return path;
    }

    protected Request newRequest(PacketType type) {
        return requester.newRequest(type).putString(handle);
    }

    @Override
    public void close()
            throws IOException {
        log.info("Closing `{}`", this);
        requester.doRequest(newRequest(PacketType.CLOSE)).ensureStatusPacketIsOK();
    }

    @Override
    public String toString() {
        return "RemoteResource{" + path + "}";
    }

}


text:
Moonbattery, Terrorism
Blame Game Madness
Imagine you were passionate in your belief that all British Muslims were responsible for the 7/7 bombings on the Tube, the Manchester concert hall massacre, or the car-ramming on Westminster bridge. Imagine that you cranked out 1000 words on your highly emotive and emotional reasons for coming to this conclusion. Who would publish it? Certainly no respectable newspaper, magazine or journal – printed or online – would give you the space. No, you'd most certainly have to send it to some crank-conspiracy site.
Additionally, you would most likely would attract the attention of the police if it left that eco-system and found its way onto Facebook or Twitter, and they might have a reasonable chance of making the charge of "incitement to racial hatred" stick.
What you most certainly would not get is a feature in Slate magazine.
That is, unless you come from an oblique angle and declare that the entire white race is responsible for the terrorist attack in New Zealand… in which case, go mad! Oh wait, you already are:
I'm a white Australian. I know that blaming myself and my cohort is illogical, but I can't escape the feeling that all of white Australia is implicated in the deaths—a white majority that has fomented and let foment hate.
Regardless, the blame game is lurching full tilt towards its fuzzy goal, whatever that is. I'm not sure if it is about settling political scores, or merely some millennial catharsis. It's hard to say.
One voice of reason is radio personality and a founder of Quilliam, Maajid Nawaz who tweets:
READ & RT: after jihadist attacks, we rightly hear from the left that we mustn't blame all Muslims. So why after New Zealand have these same voices blamed media, the right wing & those who critique Islam. We must stop exploiting the dead for our politics.
There is not much to add to his piece for the Daily Beast. Let sanity prevail.
Since we are talking about 'blame', a footnote: A New Zealand Australian senator has rightly been criticised after his statement – which amounted to victim-blaming – left him with egg on his face. But how many people joining in the chorus of condemnation are hypocrites? How often we hear after an Islamist-inspired terror attack mutterings about "Bush/Blair, Iraq, Syria, Israel, foreign policy, social exclusion, Mohammed cartoons, and even climate change!" Anything but blaming violent, ideologically-driven murderers for their own actions.
By Libby T