text:
Special Communiqué
Home » Special Communiqué » 2012 Federal Budget
2012 Federal Budget
The 2012 Federal Budget, brought down on March 29, 2012, includes some significant measures that will affect the retirement plans of most Canadians. The Budget also proposes to change the funding of public sector pension plans. Other proposals will have implications for federally regulated pension plans and for health benefits.
ELIGIBILITY AGE RAISED FOR OAS AND GIS
The Budget proposes to increase the age of eligibility for Old Age Security (OAS) and Guaranteed Income Supplement (GIS) benefits gradually from 65 to 67 starting in April 2023. The change will be fully implemented by January 2029. This proposed change to OAS/GIS eligibility will not affect anyone 54 years of age or older as of March 31, 2012. Individuals who were born on March 31, 1958, or earlier will not be affected. Those who were born on or after February 1, 1962, will have an age of eligibility of 67. Those who were born between April 1, 1958, and January 31, 1962, will have an age of eligibility between 65 and 67, in accordance with the following table:
In line with the increase in age of OAS/GIS eligibility, the ages at which the Allowance and the Allowance for the Survivor are provided will also gradually increase from 60-64 today to 62-66 starting in April 2023. This change will not affect anyone 49 years of age or older as of March 31, 2012. Certain federal programs, including those for veterans and aboriginals that provide income support benefits until age 65, will be aligned with changes to the OAS program, so these individuals do not face a gap in income at ages 65 and 66.
OPTION TO DEFER OAS
Starting on July 1, 2013, the Budget will allow for the voluntary deferral of the OAS pension for up to five years. Those who choose to defer will receive a higher, actuarially adjusted, annual pension. It appears the adjustment would be a 0.6% increase in OAS pension for each month that commencement is deferred. This is less generous than the 0.7% increase that applies under the Canada/Quebec Pension Plans between ages 65 and 70. On average, individuals will receive the same lifetime OAS pension whether they choose to commence pension at the earliest age of eligibility or defer it to a later year. GIS benefits will not be eligible for actuarial adjustment.
ENROLMENT FOR OAS AND GIS BENEFITS
The budget proposes to put in place an enrolment regime that will eliminate the need for many seniors to apply for OAS and GIS. Automatic enrolment will be implemented in a phased-in approach from 2013 to 2015.
The Budget announces that the 2010–2012 triennial review of the CPP confirms the financial sustainability of the Plan for at least the next 75 years at the current contribution rate of 9.9% of pensionable earnings. There will be no change to the CPP contribution rate.
POOLED REGISTERED PENSION PLANS
The Budget includes mention that the Government has introduced legislation to implement Pooled Registered Pension Plans (PRPPs), intended to offer a low-cost retirement savings vehicle. The PRPP legislation will apply to employees in industries that are federally regulated and to all individuals employed in Canadian Territories. Provinces would need to introduce legislation in their own jurisdictions to make PRPPs available. The federal tax rules for PRPPs will apply to all PRPPs and will be implemented in 2012.
RCAs are employer-sponsored, funded retirement savings arrangements that can be used to fund a higher-income employee's pension benefit that exceeds the maximum pension benefit permitted under the Registered Pension Plan (RPP) contribution limits. The Budget proposes tightening the rules applicable to Retirement Compensation Arrangements (RCAs) to prevent certain tax schemes. The rules relate to prohibited investments and advantages to reflect rules similar to those recently made applicable to RRSPs, RRIFs and TFSAs. Transitional rules will apply. With possible exceptions, if RCA property has declined in value, RCA tax will be refunded only where the decline in value, of the property is not reasonably attributable to prohibited investments or advantages.
EMPLOYEES PROFIT SHARING PLANS
EPSPs are trust arrangements that can enable employers to share profits with employees. The Budget proposes tightening the rules applicable to Employees Profit Sharing Plans (EPSPs) to discourage excessive contributions for employees with a close tie to their employer. The changes follow the Government's consultations on EPSPs since August 2011.
PUBLIC SECTOR PENSIONS AND COMPENSATION
In the Budget, the Government announced that it will take steps to ensure that public sector pension plans are sustainable and consistent with pensions offered by other jurisdictions and the private sector. For employees who join the federal public service starting in 2013, the normal age of retirement will be raised from 60 to 65. The Budget announced changes related to federal public service compensation, including eliminating the accumulation of severance benefits for voluntary resignation and retirement.
The Government proposes to adjust the Public Service Pension Plan so that, in time, public service employee contributions will equal those of the employer (50/50). Comparable changes to contribution rates will be made to the pension plans for the Canadian Forces, the Royal Canadian Mounted Police and Members of Parliament. Adjustments to MP's pensions will take effect in the next Parliament. The Government will work with Crown corporations to ensure that their employee pension plans are aligned with those available to federal employees.
PENSION BENEFITS STANDARDS ACT, 1985
The Budget provides that the Government will introduce technical amendments to the Pension Benefits Standards Act, 1985 applicable to federally regulated employment. The Budget does not specify what the changes will be, but they might include several measures previously announced.
WAGE EARNER PROTECTION PROGRAM
The Wage Earner Protection Program (WEPP) compensates eligible workers for unpaid wages, vacation, severance and termination, pay owed when their employer declares bankruptcy or is subject to a bankruptcy related receivership. The Budget proposes $1.4 million annually to ensure that WEPP applicants receive their benefits.
LONG-TERM DISABILITY PLANS
The Government will introduce legislation to require federally regulated private sector employers to insure, on a go-forward basis, any long-term disability plans they offer to their employees.
REGISTERED DISABILITY SAVINGS PLANS
The Budget proposes the following measures for Registered Disability Savings Plans (RDSPs):
Greater access to RDSP savings for small withdrawals.
Greater flexibility to make withdrawals from certain RDSPs by increasing the annual maximum withdrawal limit.
Greater flexibility for parents who save in Registered Education Savings Plans (RESPs) for children with disabilities by allowing investment income earned in an RESP to be transferred on a tax-free basis to an RESP beneficiary's RDSP.
Greater continuity for long-term saving by RDSP beneficiaries who cease to qualify for the Disability Tax Credit in certain circumstances by extending the period that their plans may remain open.
Improved administrative rules.
The Budget proposes to temporarily expand the definition of who may be the plan holder of an RDSP. A spouse, common-law partner, or parent will be able to become the plan holder and open an RDSP on behalf of an adult who might not be able to open a plan due to concerns about their ability to enter into a contract. These rules will be in place until the end of 2016, to provide provinces and territories time to develop long-term solutions to address RDSP legal representation issues.
MEDICAL EXPENSE TAX CREDIT AND HEALTH-RELATED GST/HST
The Medical Expense Tax Credit recognizes the effect of above-average medical and disability-related expenses on a taxpayer's ability to pay income tax. The Medical Expense Tax Credit provides federal income tax relief equal to 15% of eligible medical and disability-related expenses in excess of a threshold that is the lesser of 3% of the taxpayer's net income and an indexed dollar amount ($2,109 in 2012). The list of expenses eligible for the Medical Expense Tax Credit is regularly reviewed and updated in light of new technologies and other disability-specific or medically-related developments.
The Budget proposes to add to the list blood coagulation monitors for use by individuals who require anti-coagulation therapy, including associated disposable peripherals such as pricking devices, lancets and test strips. The cost of these devices will be eligible for the Medical Expense Tax Credit when they are prescribed by a medical practitioner. This measure will apply to expenses incurred after 2011.
The Budget also proposes exempting pharmacists' professional services from the GST/HST, other than prescription drug dispensing services. It would also expand the list of health care professionals who can order certain medical and assistive devices zero-rated under the GST/HST.
GROUP SICKNESS OR ACCIDENT INSURANCE PLANS
The Budget proposes to include the amount of an employer's contributions to a group sickness or accident insurance plan in an employee's income for the year in which the contributions are made to the extent that the contributions are not in respect of a wage-loss replacement benefit payable on a periodic basis. This measure will not affect the tax treatment of private health services plans or other plans described in paragraph 6(1)(a) of the Income Tax Act. This measure will apply in respect of employer contributions made on or after Budget Day to the extent that the contributions relate to coverage after 2012, except that such contributions made on or after Budget Day and before 2013 will be included in the employee's income for 2013.
The Budget proposes to implement changes to the exemption test applicable to life insurance policies and that the Investment Income Tax (IIT) levied on life insurers be recalibrated. The exemption test determines whether a life insurance policy is an exempt policy under the Income Tax Act. Amendments will apply to life insurance policies issued after 2013.
The raising of the retirement age under the OAS and GIS had received no public airing until two months ago and so its announcement while our Prime Minister was in Davos caught most observers unaware.
While the government gave longer life spans as the main reason for moving the retirement to 67, this change is about more than just saving some OAS pension dollars. Over the last fifty years, we have seen the baby boomers stream into the job market in huge numbers, as well as a doubling of the female participation rate in the labour force from one third to two thirds of all working-age women. As a result, governments and employers were looking for ways to entice workers to retire early to make room for new workers, which is why they introduced, and then improved, a variety of pension programs. One of those measures, by the way, was the lowering of the OAS retirement age from 70 to 65.
Now that the female participation rate and the baby boomer effect have both plateaued, the pressure to retire workers early has evaporated. In fact, as the boomers start leaving the workforce in large numbers in the next ten years, we will need to start encouraging people in their 60s to keep working longer. Once we draw unemployment levels back down to their 1960s rates, the sexagenarians represent the only large pool of potential workers to keep the economy moving. From this perspective, the budget announcement and the timing of implementation are not a surprise. This is likely the right thing to do, at least from a demographic and economic point of view. Of course, demographic reasons would be cold comfort to some under age 54 who could lose approximately $12,000 in OAS payments they might have received from age 65 to 67.
Given that the increase in the OAS and GIS retirement age was introduced so suddenly, we could be forgiven for wondering whether the same might happen to the Canada Pension Plan at some point. After all, the above rationale would apply to the CPP as much as it does to the OAS. For now, the government is assuring us that an increase in the CPP retirement age is not contemplated because the 9.9% cost of the plan is deemed to be sustainable for the next 75 years. That could change if a future actuarial report on the CPP shows the cost is not sustainable or if the rationale for increasing the retirement age changes, as suggested above. By the way, we note that the 9.9% cost proved not to be sustainable under the Quebec Pension Plan, which now has a long-term cost of over 11%.
Whether it is justified or not, the deferral of OAS will involve considerable discomfort, not only on the part of workers under age 54 who must do considerably more now to prepare for retirement or keep working, but also for the provincial legislators who must decide to what extent they align provincial pension legislation with the change in OAS retirement age. For instance, the bridge benefit provided under registered pension plans must end currently by age 65, which would leave a gap once the OAS retirement age starts to change. The change to the normal age for OAS may foreshadow the day when provinces may seek to amend pension standards legislation to accommodate normal retirement ages older than age 65, or to do away with the concept of normal retirement age altogether.
The proposal under the federal public sector plans, which would see employees contributing at the same rate as employers, is similar to what was proposed in Ontario's budget earlier in the week, and may be just as unworkable. If a large deficit arises that brings the total contribution rate above 35% of payroll, for example, it will be challenging to reduce benefits sufficiently to bring the cost to a more manageable level or to ask employees to shoulder half the cost. The government could show leadership by promoting true target benefit plans.
Special Communiqué - March 30, 2012 (PDF)


Today we're going to look at hashing.
can also be very effective in a practical applications.
Here's our summary of where we left off with red black BSTs.
a broad range of symbol table operations.
And the question is, can we do better than that?
Is logarithmic performance the best we can do?
And the answer is that, actually, we can.
But it's a different way of accessing the data.
And also, it doesn't support ordered operations.
search and insert that we can get this way is worthwhile.
as really try to reduce the problem to being like an array.
and we use that array index to store the key and the value in an array.
Maybe the value in a parallel array.
Now, there's a lot of issues in doing this.
The first thing is we need to be able to compute the hash function.
it can get complicated for more complicated types of data.
we're going to be doing equality tests.
checking whether two keys are equal.
try to see if the key that's there is equal to the key we're looking for.
And then there's the problem of collision resolution.
Where, it's since there are so many possible values for a typical data type.
we need a collision resolution strategy to try to figure out what to do in that case.
in order to get an effective single table implementation.
Hashing really at its core is a classic space-time tradeoff.
with space for every possible key and just use the key itself as an index.
we've got a table of size 2 to 32 second then we're just fine.
then I'll just hash everything to the same place and then do sequential search.
But a sequential search can be slow if we have lots of keys.
we also don't unlimited time so we're trying to find something in-between.
resolution methods called separate chaining and linear probing.
Now, we'll look at the implementation of hash functions.
uniformly scramble it to produce a table index.
the thing efficiently in a reasonable amount of time.
every table index is equally likely for each key.
computer scientists have researched this problem in a lot of detail.
And there's quite a bit known about it.
But in practice this is something that still we have to worry about somewhat.
So for example, let's suppose that our keys are phone numbers.
function because so many phone numbers will have the same area code.
phone number has the same first three digits.
You have a better chance using the last three digits.
But actually, in most cases, you want to find the way to use all the data.
Another example, Social Security numbers.
with some geographic region and it's better to use the last three digits.
you need a different approach for every key type.
implementors at Java to implement good hash functions.
function that's effective, that leads to an effective symbol table implementation.
applications, so some conventions for hashing are built into Java.
hash code which is returns a 32-bit int value.
y are equal then their hash code should be equal.
that enables the hash code to be used for hashing.
be that they're hash code's are not equal but you can't always get.
hashing is the memory address of the object.
For hashing an object just some memory address of an object.
So that kind of meets these two requirements for Java.
every table position should be equally likely.
So usually we'll do some more work to try to make that one happen.
As far as the algorithms go, as far as the rules go, you can always return 17.
It doesn't have this highly desirable attribute but everything would compile.
So you'd have to be a little careful that somebody is in there doing that.
people would use for similar table keys and that's the sweet spot for hashing.
code and also your application does not need ordering.
we'll talk a little bit about how to implement hash codes.
we acknowledge that that's what the hash code is.
that every table position should seem to be equally likely.
integer supposed to be 32-bits.
So they just returned the value.
it's hard to think about what you really might want there.
For a double value, this is the code.
the most significant 32-bits with the least significant 32-bits.
you want to try to involve all the bits somehow into hash function.
and then, really computes the value of that number.
A way of evaluating a polynomial or a number.
Where for each digit, you just multiply.
So it treats it as a base 31 number.
what you have so far and add the next digit.
And that's called Horner's Rule.
And if you're familiar with it, fine.
If you're not, you can look at this little example and decide what it is.
in computing the hash function.
keep the hash value in an instance variable so it only gets computed once.
And that is going to be very effective for performance and lots of applications.
Once it computes the hash code, it stores it as an instance variable.
it will just provide it and that works because strings are immutable.
So how about implementing a hash code for our own type of data?
a couple of instance variables, a string, a date, and a double.
And we need to compute a hash code so return a 32-bit value.
And again, we want to try to make use of all the pieces of data that we have.
the types of data that we're using.
this kind of mimics Horner's method to just add in more data as we get it.
each field we multiply by 31.
And then add the hash code for that field.
So if it's a reference type, you just use the hash code.
So who was a string, so string has a hash code method.
So we add that in.
add that hash code in.
Trying to take all the bits and scramble all the bits and use them.
And for primitive types take the wrapper type and use the hash code.
of data that might include several different types of instance variables.
So that's the standard recipe.
Here's the 31x plus y rule to combine all the fields.
If it's a primitive type, use the wrapper hashCode.
If the field is null, return 0.
If it's a reference type, use that hashCode and apply recursively.
And if you have an array, you have to apply it to each entry.
Or actually Java implements that in its arrays library.
it's used in several Java's libraries.
all positions are equally likely.
It's called universal hash functions.
This things exist but they're not so widely applied at in practice.
key but consult an expert if you're seeing some performance problems.
Or you really want to be certain that it in some performance critical situation.
a int value that is between minus 2 to the 31st and 231st- 1.
we need an int value between zero and M minus one.
the big hash code value down to be a number between zero and M minus one.
arithmetic we know that we're using all the bits in the number in that point to.
this arithmetic implement and Java, because it's one in a billion times.
You really have to take the absolute value.
negative and you can't have it negative.
You want it to be between 0 and M- 1.
But even if you take the absolute value.
There's going to have -2 to the 31st.
It's possible so you have to just take the 31-bits.
Get the hash code out, make it positive and MOD M is the way to go.
The math doesn't quite work out right.
use that as a template for what you might want to do.
be a number between 0 and M-1.
some possibility of each table position appearing with equal likelihood.
hash an integer between zero and M minus one.
And this assumption, again, it would work.
It's possible to come close to this.
Lots of researchers have done good work to show this.
We'll assume that is a starting point.
that directly relates the study of hash functions to classical probability theory.
So we've got M bins, that's our correspondence to our hash table.
And we get M balls.
And we have some number of balls, however many keys we have.
And we'd throw them universally at random into M bins.
And these things are studied in classical combinatorial analysis.
For example, there's the birthday problem.
when do you get the first collision?
And the answer to that is it's about square root of pi M over two.
When does all the bins fill up?
That's called the coupon collector problem.
After about natural log M tosses, every bin has at least one ball.
which is what we're doing with hashing.
problems when we want to study hashing.
balls into the M bins then the most loaded bin has about log M over log M balls.
the performance of hashing algorithms when we get to the implementations.
using the modular hashing function for strings like the one that Java uses.
And they're pretty uniformly distributed.
That's the summary for hash functions.


Welcome to our website. We hope you find the information you need here but if not please give us a call at (813) 230-5000. We are always happy to talk to you or feel free to come by our office. As your local insurance agent we want to make a customer, and friend, for life. We represent multiple insurance companies. Why go direct to one carrier when we can shop multiple carriers at once? Pay your premium here on our site, by phone or come by our office.


Start with configuring the global extension settings.
The extension configuration parameters can be found under Stores > Settings > Configuration > AHEADWORKS EXTENSIONS > Layered Navigation.
Hide attribute values if they are not available - shows or hides the attribute values within one filter void for the current product selection.
The 'SEO' optimization settings are aimed at improving store presence in search engines and to avoid destructive SEO issues.
product listing is different from default values - when the product listing value becomes a part of the URL.
Add canonical URLs - defines if the canonical URL's are added to the catalog search pages.
The 'Use 301 redirect for old URLs' setting works as follows: if the indexed catalog page URL with filters applied doesn't correspond to the current value of the SEO-friendly URL setting but corresponds to other values, the indexed category URL will be redirected to the URL of the new format.
Now let's explore how filters can be configured separately. For this purpose, open the 'Manage Filters' grid.
The grid can be found in Catalog > Layered Navigation by Aheadworks > Manage Filters.
The 'Manage Filters' grid contains six columns, including filter names, codes, types, their general status, status in search, and position. In the grid, you can sort filters by the above attribute and perform mass actions with the selected filters. This way, you can change the filter status and status in search or synchronize the selected filters.
The 'Edit Filter' page contains the two sections: 'General Settings' and 'Categories'.
Select categories where to display the filter - the option makes a particular filter available: a) everywhere where applicable, b) only in the categories of the lowest level, c) exclude specific categories to be available for the filter.
The filter becomes available only if at least one of the 'Use in Layered Navigation and 'Use in Search Layered Navigation' options is available.


Advocacy Month Week 1: What do you wish others understood about literacy?
On each Friday of Literacy Advocacy Month, NCTE member Cathy Fleischer will guide readers through an exploration of Everyday Advocacy – a resource for educators who are looking for ways to make change.
Sadly, the ongoing conversation about school reform too often leaves out the voices of teachers—those who are most intimately acquainted with the day-to-day issues that impact students and their learning. We know these voices are essential ones for policy makers to hear, but we recognize as well the pressures on teachers to remain silent.
How can teachers enter the conversation? How can teachers do so in ways that are smart, safe, and savvy? And how can they find the time to do so, given their very busy and very full lives?
These questions are central to NCTE's new web resource, Everyday Advocacy, a site devoted to helping teachers enter the public conversation in order to create change. As you look through the site, you'll see lessons from actual community organizers and examples from real teachers who have taken on an advocacy stance. You'll learn how they chose an issue that impacted them in their local contexts, framed that issue to help others understand, found allies along the way, and created a plan that has helped to change minds.
Over this month of advocacy, what if you joined these teachers on the road to become an everyday advocate? What might you learn from them and their work? And what could you do—in your own context—to help others understand issues of literacy and literacy education differently?
Over the course of the month, we'll share some videos and point you to specific sections of the site that you might find useful. Along the way, we'll ask you some questions and suggest some steps you might take toward entering the public conversation in order to make change.
Let's start with this seemingly simple question: What do you wish others understood about literacy and literacy education? Think about that question, maybe write a little bit about it, maybe talk to some of your colleagues about it and then read into the first two sections of the site: Begin and Why Advocacy Matters. And begin to imagine what it might be like to be an everyday advocate.


Admob + Firebase: Plugin with id 'com.google.gms.google-services' not found.
I was following the instruction in https://firebase.google.com/docs/admob/android/quick-start to add Admob into my Android App.
Gradle sync failed: Plugin with id 'com.google.gms.google-services' not found.
It seems the tutorial has left out some details. After I added the following two lines, this problem was solved.
After that, click on the Sync link on the top right corner to synchronize Gradle.


text:
Q: Custom data source for GeoServer raster image I'm working on a project where a custom binary data file contains latitude, longitude, and temperature data.  I'm interested in creating a DataStoreFactory plugin to enable GeoServer to load this information, and then use its own layers capabilities to create a coverage raster image.
I've spent some time looking through tutorials and the GeoTools site, and fighting with some dead links.  My progress so far has been to create an eclipse project with the following class:
package org.geotools.giops.plugin;

import java.io.File;
import java.io.IOException;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import org.geotools.data.AbstractDataStoreFactory;
import org.geotools.data.DataStore;
import org.geotools.data.DataStoreFinder;

public class MyCompanyDataStoreFactorySpi extends AbstractDataStoreFactory {

    private static DataStore dataStore_ = null;

    private synchronized static DataStore getDataStore() throws IOException
    {
        if ( dataStore_ == null )
        {
            File file = new File("example.shp");
            Map map = new HashMap();
            map.put( "url", file.toURL() );

            dataStore_ = DataStoreFinder.getDataStore( map );
        }

        return dataStore_;

    }

    public DataStore createDataStore(Map<String, Serializable> arg0)
            throws IOException {
        System.out.println("createDataStore: args:");
        for(String key : arg0.keySet())
            System.out.print("key=" + arg0.get(key).toString() + ", ");
        System.out.println("");

        return getDataStore();
    }

    public DataStore createNewDataStore(Map<String, Serializable> arg0)
            throws IOException {
        System.out.println("createNewDataStore - weird");
        return getDataStore();
    }

    public String getDescription() {
        return "MyCompany Formatted Data Store";
    }

    public Param[] getParametersInfo() {
        // let's not return null at this point in the game
        Param p[] = { new Param("doit"), new Param("hmm") };
        return p;
    }

}

I've also added a META-INF/services/MyCompanyDataStoreFactorySpi file:
org.geotools.giops.plugin.GIOPsDataStoreFactorySpi

My expectation is that I can jar this up together with the META-INF folder, and then drop it into the GeoServer's webapps/WEB-INF/lib folder and have it pick it up as a new type of data store.
Currently, I don't see any indication in the logs that the jar is being noticed, or looked at.  Perhaps I need some of the UI modifying code?  I don't really know.  While my dataSource is a shapefile at this point, the end goal is to load lat/long/temp data and render a raster image.
I've noticed that DataSource GeoTools classes only reference feature data.  I'm worried I'm going in the wrong direction here.
Do you have any tips on how I should be proceeding with getting my custom datastore visible in the GeoServer's admin pages?

redpajama_set_name: RedPajamaStackExchange


The Mikasa VQ2000 has a soft touch and superior playability. The VQ2000 features the exclusive Mikasa Micro Cell composite cover that has set the standard for all other composite game balls. The Mikasa VQ2000 has "immediate feel appeal" and a patented panel design that offers the ultimate visibility of rotation and flight pattern. With a durable cover, Soft Bilt fabric center and Accu-Balance technology, the Mikasa VQ2000 is the ideal ball for beginners, intermediate players or the best players in the game. Butyl bladder guarantees true shape and air retention. With Mikasa's two-year warranty you can play with confidence!


text:
Dr. Phil Psychoanalyzes Bernie Sanders' Appeal to the Nation's Young, Using Carl Jung's Archetype Old Man Theory
"Soon, the old man will be
long gone. I mean like, forever."
"Look," said a confident Dr. Phil to an unusually young TV studio audience.
"I know I'm breaking with social conventions here by lending my celebrity to endorse a political candidate for public office, especially during an election year," said Dr. Phil.
"But hear me out first," continued Dr. Phil.
"Because, Bernie and Hillary are the winning ticket for the presidency come November 2016!" he said.
Cheers arose from Dr. Phil's youthful studio audience.
"Settle down," quickly added a somewhat irate Dr. Phil. "I support a Bernie and Hillary ticket rather than a Hillary and Bernie ticket, but not for the reason y'all are thinking. Now hear me out of this one first. Before you pass judgement, okay?"
The studio audience complied and silently focused their attention on Dr. Phil.
Dr. Phil then went on to explain in complex professional conclave terms Carl Jung's psychological concept of the archetype old man, which has constantly reappeared throughout mankind's history regardless of time, distance, culture or religion during his entire occupation of the planet earth.
"The way I see it," continued Dr. Phil. "Even if he is elected president, Sanders has only got what? One or two years tops? To live, I mean. Before he dies in office."
"So why not vote for a Bernie and Hillary ticket in the fall? " said Dr. Phil. "Hillary will be in charge in a year or two. May be even in a matter of months, if we're lucky. At least according to my calculations and most life insurance actuary tables."
Boos, hisses and fight fights broke out among members of the youthful studio audience.
"Think about it, folks," Dr. Phil shouted above the fray, melee and mayhem. "We got nothing to lose. The old man will soon be long gone and out of our lives. I mean like, forever!"
Copyright © 2016 by Robert W. Armijo. All rights reserved.
Photo(s) Courtesy of:
wpclipart.com
Labels: Dr. Phil, Hilary, presidential election, Presidential election 2016, Sanders

redpajama_set_name: RedPajamaCommonCrawl


text:
from re import search as re_search
from os import listdir
import sys
import logging

""" change to logging.DEBUG when running debugs"""
logging.basicConfig(level=logging.WARN)

class Token():

    def __init__(self, text, required):
        self.text = text
        self.words = text.split('|')
        self.required = required
        self.key_text = None
        self.value = False
        self.exact_match = False

    def __str__(self):
        return "REQUIRED: %s, KEY_TEXT: %s, VALUE: %s, WORDS: %s" % \
            (self.required, self.key_text, self.value, self.words)

    def options(self):
        results = []

        for word in self.words:
            if word.startswith('<'):
                if word == '<interface>':
                    results.extend([x for x in listdir('/sys/class/net/')
                                    if x != 'bonding_masters'])
                else:
                    results.append(word)

            # Keyword
            else:
                results.append(word)

        return results

    def matches(self, argv_text, all_tokens):

        if not argv_text:
            return False

        for word in self.words:

            # Variable input <ip>, <number>, etc
            if word.startswith('<'):

                if word == '<ip>' or word == '<source-ip>':
                    try:
                        # ipv4_or_ipv6 = ipaddress.IPAddress(argv_text)
                        self.key_text = word
                        self.value = argv_text
                        self.exact_match = True
                        return True
                    except:
                        pass

                elif word == '<ip/mask>':
                    try:
                        # ipv4_or_ipv6 = ipaddress.IPNetwork(argv_text)
                        self.key_text = word
                        self.value = argv_text
                        self.exact_match = True
                        return True
                    except:
                        pass

                elif word == '<interface>':

                    if argv_text in listdir('/sys/class/net/'):
                        self.key_text = word
                        self.value = argv_text
                        self.exact_match = True
                        return True

                elif word == '<major>' or word == '<minor>' or word == '<number>':
                    if argv_text.isdigit():
                        self.key_text = word
                        self.value = int(argv_text)
                        self.exact_match = True
                        return True

                # For all other <foo> inputs, only do basic sanity checking
                else:
                    conflicts_with_keyword = False

                    for x in all_tokens:
                        if x.startswith(argv_text):
                            conflicts_with_keyword = True
                            break

                    if not conflicts_with_keyword:
                        self.key_text = word
                        self.value = argv_text
                        self.exact_match = True
                        return True

            # Keyword
            else:
                if argv_text == word:
                    self.key_text = word
                    self.value = True
                    self.exact_match = True
                    return True

                elif argv_text != '-' and argv_text != '--' and word.startswith(argv_text):
                    self.key_text = word
                    self.value = True
                    return True

        return False

class CommandSequence():

    def __init__(self, string):

        self.option = []
        self.score = 0

        # Remove leading and trailing whitespaces
        self.text = string.strip()

        # Compress duplicate spaces into single space
        self.text = ' '.join(self.text.split())
        tmp_tokens = self.text.split(' ')[1:]
        self.text = ' '.join(tmp_tokens)

        self.text = self.text.replace(' |', '|')
        self.text = self.text.replace('| ', '|')
        self.text = self.text.replace(' ]', ']')
        self.text = self.text.replace('[ ', '[')

        assert self.text.count('[') == self.text.count(']'), 'You have mis-matched []s in:\n  %s\n' % self.text
        assert self.text.count('(') == self.text.count(')'), 'You have mis-matched ()s in:\n  %s\n' % self.text

        # Now that we know each word is separated by a single whitespace split
        # on whitespace. Ignore the first token which is the program name.
        self.tokens = []
        for x in self.text.split(' '):

            if x.startswith('('):

                # Remove the leading and trailing ()s
                x = x[1:-1]
                token = Token(x, True)

            elif x.startswith('['):

                # Remove the leading and trailing []s
                x = x[1:-1]
                token = Token(x, False)

            elif x.startswith('--'):
                token = Token(x, False)

            else:
                token = Token(x, True)

            self.tokens.append(token)

    def __str__(self):
        text = []
        index = 0

        for token in self.tokens:
            text.append('%d: %s' % (index, token))
            index += 1
        return self.text + '\n' + '\n'.join(text)

    def argv_matches_tokens(self, argv):
        len_argv = len(argv)

        if len_argv > len(self.tokens):
            logging.debug("%-70s: %d argv words but we only have %d tokens. SCORE: 0" % (
                self.text, len_argv, len(self.tokens)))
            return False

        self.last_matching_token = None
        argv_index = 0

        for token in self.tokens:
            if argv_index < len_argv:
                text_argv = argv[argv_index]
            else:
                text_argv = None

            if token.required:
                if token.matches(text_argv, self.all_tokens):
                    argv_index += 1
                    self.score += 1
                    self.option = []
                    self.last_matching_token = token

                else:
                    if not argv_index:
                        self.score -= 1

                    self.option.extend(token.options())
                    logging.debug("%-70s: Required token '%s' failed to match vs. argv[%d] '%s'. SCORE: %d" %
                                  (self.text, token.text, argv_index, text_argv,
                                   self.score))
                    return False

            else:
                if token.matches(text_argv, self.all_tokens):
                    argv_index += 1
                    self.score += 1
                    self.option = []
                    self.last_matching_token = token
                else:
                    self.option.extend(token.options())

        if self.score != len_argv:
            logging.debug("%-70s: %d/%d argv words matches. SCORE: %d" %
                          (self.text,
                           self.score, len_argv, self.score))
            return False

        logging.debug("%-70s: MATCH" % (self.text))
        return True

class NetworkDocopt():
    """
    Heavily influenced by docopt but designed to be a little more like
    a Networking CLI with partial word acceptance, IPv4 sanity checking, etc
    """

    def __init__(self, docstring):
        self.args = {}
        self.match = False
        self.options = []
        self.program = None
        self.closest_matches = []
        self.docstring = docstring

        # Parse the 'Usage' section of the doc string.  Create a
        # CommandSequence object for every line in Usage, store those
        # objects on the self.commands list.
        state = None
        self.commands = []
        found_help_option = False

        for line in docstring.split('\n'):
            if line.startswith('Usage'):
                state = 'Usage'
                continue

            elif line.startswith('Help'):
                break

            elif line.startswith('Options'):
                break

            elif line == '':
                continue

            if state == 'Usage':
                if '--help' in line:
                    found_help_option = True
                self.commands.append(CommandSequence(line))

                if self.program is None:
                    result = re_search('^\s+(\S+)', line)
                    if result:
                        self.program = result.group(1)

        # Automagically add a (-h|--help) option
        if not found_help_option:
            line = '%s (-h|--help)' % self.program
            self.commands.append(CommandSequence(line))

        if logging.getLogger().getEffectiveLevel() == logging.DEBUG:
            for cmd in self.commands:
                logging.debug('CMD TEXT: %s' % cmd.text)
                logging.debug('CMD TOKENS')
                logging.debug(cmd)
                logging.debug('')

        # Now loop over all of the CommandSequence objects and build a list
        # of every kind of token in the doc string
        all_tokens = []
        for cmd in self.commands:
            for token in cmd.tokens:
                all_tokens += token.words
        all_tokens = set(all_tokens)

        # Command sequence all_tokens should only cover options found in that docstring
        # entry. Not the all docstring tokens.
        for cmd in self.commands:
            cmd.all_tokens = []
            for token in cmd.tokens:
                cmd.all_tokens += token.words

        # The 1st item in argv is the program name...ignore it
        self.argv = sys.argv[1:]

        # Init all tokens in args to None
        for x in all_tokens:
            self.args[x] = None

        candidates = []
        for cmd in self.commands:
            if cmd.argv_matches_tokens(self.argv):
                candidates.append(cmd)

        # This is a bad thing
        if not candidates:

            logging.debug("There are no candidates")

            high_score = -1
            scores = {}
            options_by_score = {}

            for cmd in self.commands:
                score = cmd.score

                if score > high_score:
                    high_score = score

                if score not in scores:
                    scores[score] = []

                if score not in options_by_score:
                    options_by_score[score] = []

                # Set the option choices to return for bash-completion
                if cmd.option:

                    # If the user entered the exact keyword then we should return the
                    # options following that keyword.
                    if not cmd.last_matching_token or cmd.last_matching_token.exact_match:
                        options_by_score[score] += cmd.option

                    # If they only entered part of the keyword ('sh' for 'show' for example)
                    # then we should return 'show' so bash can tab complete it.
                    else:
                        if cmd.last_matching_token.key_text:
                            options_by_score[score].append(cmd.last_matching_token.key_text)

                scores[score].append(cmd)

            if high_score in scores and scores[high_score]:
                self.closest_matches.append('')
                self.closest_matches.append('Closest Matches:')

                for cmd in scores[high_score]:
                    self.closest_matches.append('    %s %s' % (self.program, cmd.text))
                self.closest_matches.append('')

            if high_score in options_by_score and options_by_score[high_score]:
                self.options = sorted(set(options_by_score[high_score]))

        # This is a good thing
        elif len(candidates) == 1:
            cmd = candidates[0]

            logging.debug("There is one candidate:\n%s" % cmd)

            for token in cmd.tokens:

                # The key_text is only set if the token matched
                if token.key_text:
                    self.args[token.key_text] = token.value
                    logging.debug("args key: %s, value: %s" % (token.key_text,
                                                               token.value))

            self.match = True
            self.options = []

            # Set the option choices to return for bash-completion
            if cmd.option:

                # If the user entered the exact keyword then we should return the
                # options following that keyword.
                if not cmd.last_matching_token or cmd.last_matching_token.exact_match:
                    self.options = cmd.option

                # If they only entered part of the keyword ('sh' for 'show' for example)
                # then we should return 'show' so bash can tab complete it.
                else:
                    if cmd.last_matching_token.key_text:
                        self.options = [cmd.last_matching_token.key_text]

            # If the user entered -h or --help print the docstring and exit
            if len(cmd.tokens) == 1:
                token = cmd.tokens[0]
                if token.key_text == '-h' or token.key_text == '--help':
                    print(self.docstring)
                    exit(0)

        else:
            # print("\nERROR: ambiguous parse chain...matches:")
            _str = 'Ambigious Match. Options:'
            _possible_matches = []
            for cmd in candidates:
                for _token in cmd.tokens:
                    if _token.key_text:
                        _possible_matches.append(_token.key_text)
            print(_str + ' ' + ', '.join(_possible_matches))
            exit(8)

    def get(self, keyword):
        return self.args.get(keyword)

    def print_options(self):
        if self.options:
            print('\n'.join(self.options))

redpajama_set_name: RedPajamaGithub


A PVD AlTiN+TiN coated tough grade followed by a special "SUMO TEC" surface treatment. Suitable for milling, grooving and parting stainless steel, high temperature alloys and other alloy steels. Recommended for interrupted cut and heavy operations. First choice for milling Inconel.


HBK Travel is located in Hoboken, New Jersey. This is the only HBK Travel we found in Hoboken.
Please call (201) 222-9425 to find out the business hours of HBK Travel.
Most travel agencies in Hoboken accepts both Cash and major Credit Cards. Please call (201) 222-9425 to find out available payment options accepted by HBK Travel.
Following is a list of other travel agencies found within few miles of HBK Travel. You may also view all travel agencies in Hoboken, New Jersey.
We have not received any review on HBK Travel from our visitors yet.


We educate and inspire youth and adults through Growth Mindset with the goal of providing the skills and resiliency needed to find purpose and satisfaction in their lives.
GearUp2Lead is a nonprofit leadership development organization located in Flint, MI with the mission of educating and inspiring youth and adults through Growth Mindset. GearUp2Lead's primary program is GearUp Academy, a non-traditional high school that seeks to provide students with the inspiration, skills, and resiliency needed to find purpose and satisfaction in their lives. The program balances core curriculum with experiences in critical thinking, problem solving, communication skills, and entrepreneurial ideas.
Under our guidance, students will be expected to earn their high school diplomas and gain employment with one of our community business partners. Along with GearUp Academy, our Spring Conference and Curriculum modules continue to help build leaders in an effort to inspire individual and community change.
GEAR represents the four core tenets of our organization. Growth Mindset, Empathy, Action, and Responsibility. In a Growth Mindset, the most basic abilities can be developed through dedication and hard work— brains and talent are just the starting point. This view creates a love of learning and a resilience that is essential for great accomplishment. Virtually all great people have had these qualities.
Growth Mindset – You can learn anything. There is no end to your abilities.
Responsibility – Take ownership of your life in order to enact true change.
Empathy – Develop the ability to share and understand the feelings of others.
Action – Not only are we defined by what we do, we are also defined by what we don't do.
Individuals who believe their talents can be developed (through hard work, good strategies, and input from others) have a growth mindset. They tend to achieve more than those with a more fixed mindset (those who believe their talents are innate gifts). This is because they worry less about looking smart and they put more energy into learning. When entire companies embrace a growth mindset, their employees report feeling far more empowered and committed; they also receive far greater organizational support for collaboration and innovation. In contrast, people at primarily fixed-mindset companies report more of only one thing: cheating and deception among employees, presumably to gain an advantage in the talent race.


text:
Nearly 5,000 people injured in Astroworld tragedy, new filing says
10 people have died as a result of a crowd surge at Travis Scott's Houston-based festival last November
By Will Richards
A fan pays their respects outside NRG Park, the site of Astroworld Festival, on November 7, 2021. CREDIT: Alex Bierens de Haan/Getty Images
Nearly 5,000 people were injured in the tragedy at last year's Astroworld festival, a new filing reveals.
A new court filing filed in Harris County, Texas on Monday (May 9) from three lawyers – Jason Itkin, Richard Mithoff and Sean Roberts – said that 4,900 people suffered injuries of differing extents, divided up into whether they needed "extensive" or "less extensive" medical treatment.
10 people died at Travis Scott's Houston-based festival last November after a crowd surge, and the new filing, reported by Rolling Stone, includes 732 claims from attendees who required "extensive medical treatment," 1,649 with "less extensive treatment," and 2,540 cases where the extent is yet to be confirmed. The total of over 4,900 is by far the most injuries linked to the tragedy yet.
Astroworld 2021. Credit: Rick Kern/Getty Images
In January, a website was set up by the FBI in tandem with the Houston Police Department, asking people that attended the festival to submit photos and videos taken from the event.
The following month, it was then reported that hundreds of lawsuits against Scott and Live Nation related to the Astroworld tragedy would move forward as one case, combining over 380 separate filings that seek to represent nearly 2,800 alleged victims.
Last month, Scott released his first song since Astroworld – a collaboration between himself, Future and 808 Mafia producer Southside titled 'Hold That Heat'. The rapper has been making a slow comeback since the tragedy took place – he reportedly performed a short set at a private pre-Oscars party, and a brief DJ set at a Coachella afterparty, before performing last weekend at a Miami nightclub.
The rapper also announced the launch of his multi-million dollar Project HEAL initiative, and said he would "always honour the victims of the Astroworld tragedy". The rapper was, however, accused of violating a gag order by announcing the initiative. Scott is currently facing hundreds of combined lawsuits over the events that unfolded at Astroworld.


Listing Mirror will be in Las Vegas at the Convention Center for PROSPER Show 2018!
As a sponsor of PROSPER Show, we are pleased to offer you a $100 discount code for each conference ticket that you purchase. Simply enter "18xList" during checkout to save.
This intensive educational event will feature over 25 speakers, including nearly a dozen former Amazon business leaders and several industry leaders.
There will be formal networking events with 1000+ large Amazon sellers, as well as an exhibitor floor of top service providers that support Amazon marketplace sellers.
See these links for more information on tickets, agenda details for the general conference and the pre-conference workshops on March 12.
See you in Las Vegas in mid-March!


text:
Q: What is the << operator? Just trying to understand a line of code which copies a file:
new File("c:\\test") << new File("c:\\test\\newtest").bytes

What is the << known as ?

A: It's the left shift operator
That line of code is calling File.leftShift( byte[] bytes ) (documentation here), so is writing the bytes from newtest into test


✨ Love is not seeing eye to eye. Love is not always feeling in love. Love is not just fun and games. Love is not always satisfying. Love is not what we see in the movies, read in romance novels or write about in poetry.
Love is risky. Love is challenging. Love is testing. Love is wobbly. Love is sometimes inconvenient. Love is often overwhelming. Love is quite scary. Love is complex. Love is work.
Love is grounding. Love is comforting. Love is wholesome. Love is acceptance and compromise. Love is patience. Love is kindness and giving. Love is meaning. Love is innate and nurturing. Love is fruitful. Love is surprising. Love is exposing and intimate. Love is bottomless. Love is interconnectedness. Love is mighty and gentle. Love is firm and soft. Love is spiritual. Love is dark and light. Love is balance. Love is burning hot fire and cool spring waters.
Love is beautiful and divine. Love is you and love is me. Love is song and love is dance. Love is faithful. Love is life. Love is essence. Love is God.
Love is synthesizing, electrifying and tranquilizing.
Tanya Dahan is a British wife, mother, self-development extraordinaire and make-up artist, currently residing in the magical and mystical town of Safed. She is a professional certified life & well-being coach and she loves to see individuals thrive! Tanya specializes in coaching women who wish to feel centred and empowered so they can reach a place of inner peace, accomplishment and personal mastery. Live and live well, is her motto.


Download And View AV1, HEVC/H, AVC/H, MPEG-4 Videos Up To 4K Resolution Decode MPEG Player Elecard 4K video about Tomsk, part 1. H/HEVC standard is a revolutionary breakthrough in video compression technology. A key requirement for the new standard is to double the data. 年6月13日 Elecard HEVC Player Sample supports only the above-mentioned video types, with audio streams in MPEG and AAC format. It features support.
Elecard HEVC Player Sample is a program developed by Elecard. The most used version is , with over 98% of all installations currently using this . Here are encoded sample files of HEVC/H; please download to test them and (Playable with Elecard HEVC Player Sample or add its DirectShow filters to. To Notebook Get Elecard HEVC Player Sample From Vpn. December 8, 4: 24 AM. -. ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ✚ ᐳ Elecard HEVC Player.
13 Jul Stearsthis player is just like the divx hevc player. that is, they are both custom made for their product only. you either d/l their hevc encoded. Elecard DirectShow thomashomesofhinsdale.com SDK Free download hevc | Page 12 - CNX Software Download Free Free AVI Player - moddownload libde HEVC. Elecard hevc player download. Click here to get file. Figure 1 elecard hevc analyzer main window. Hevc anime in the elecard hevc player alpha. 13 Jun Elecard HEVC Player Sample Crack - Plays videos in HEVC/H format. Elecard HEVC Player Sample is a handy and reliable application designed to playback videos encoded in HEVC/H format. Elecard HEVC Player Sample.
21 Jan Where can i find a directshow HEVC Codec for bsplayer? Thanks. Player Newbie thomashomesofhinsdale.com GitHub is where people build software. More than 27 million people use GitHub to discover, fork, and contribute to over 80 million projects. Elecard MPEG Player is designed for high-quality decoding and playback of the popular multimedia formats, including, among others, H/AVC, MPEG High Efficiency Video Coding (HEVC), also known as H and MPEG-H Part 2, is a video .. of a HEVC software player based on the OpenHEVC decoder and GPAC video player which are both licensed under LGPL. European R&D project on HEVC TV and Hybrid TV; Elecard HEVC Analyzer – in-depth analysis tool.


text:
Cement scandal highlights corruption
The Palestinian Authority's general prosecutor has begun an extensive investigation into the so-called Egyptian cement scandal.
by Khalid Amayreh
06 Aug 2004 11:46 GMT
Arafat has refused to comment on the corruption claims
It is claimed that two Palestinian companies imported Egyptian cement and diverted it to Israel where it is believed it was used in the building of Israel's separation wall.
A number of senior and junior PA officials may be indicted for their involvement in the affair which has already caused huge embarrassment to an increasingly beleaguered Palestinian Authority and seriously undermined its credibility, if not legitimacy.
The officials allegedly received grafts, bribes, kickbacks, or payments in return for their "silence", falsifying documents and facilitating the "deal".
Palestinian Authority leader Yasir Arafat, who is facing stiff and growing internal opposition to his autocratic style of governance, has remained tight-lipped about the scandal.
Last week, he told visitors from the West Bank that the affair was giving Israel and the US additional ammunition to attack and vilify the current Palestinian leadership.
The scandal, however, continues to snowball. It has galvanised the Palestinian public, to voice its widespread indignation at the PA's failure to tackle corruption.
This indignation, say many observers, may evolve into violence as was seen recently in the Gaza Strip.
The Egyptian cement affair began nearly a year ago when Egypt offered to sell the Palestinian Authority 420,000 tonnes of high-quality cement at symbolic prices ($12-15 a tonne) to prop up the Palestinian economy, badly battered by sustained Israeli invasions over the past four years.
The imported cement was meant
for rebuilding Palestinian homes
The cement was to be used to rebuild Palestinian homes and buildings destroyed by the Israeli occupation army, particularly in the Gaza Strip where entire neighbourhoods in Rafah in the south were bulldozed recently.
However, instead of dealing honourably with the goodwill gesture, a number of corrupt and well-connected businessmen, most likely in coordination with influential figures within the PA, were obtained a licence to import the cement from the PA Economy Ministry, headed by Mahir al-Masri.
The cement, which included several large consignments, was trucked through two border crossings between Sinai and the Gaza Strip. However, instead of going to the Gaza Strip, the cement ended up in the Israeli town of Ashkelon.
Counter claims
Al-Masri claims that the amount of imported cement, the subject of the controversy, did not exceed 65,000 tonnes.
The Palestinian Legislative Council carried out an investigation after an Egyptian newspaper, Al Arabi, disclosed business links between an Israeli businessman of German descent and a number of Palestinian companies, some affiliated to the PA.
One of the main authors of the investigation, Hasan Khraisha, is a deputy speaker of the council and a frequent critic of Arafat's autocracy.
He told Aljazeera.net he had found authentic records showing the consignments amounted to 420,000 tonnes of high-quality cement.
He pointed out that the bulk of this amount (390,000 tonnes) ended up in Israel and was sold to an Israeli businessman who in turn resold it to Israeli contractors who were building the separation wall in the northern West Bank.
According to a report published on 31 July by the Ram Allah-based daily, Al-Ayyam, the PA businessmen who sold the cement to the Israeli businessman made profits ranging from $8 million to 9 million dollars. The businessman reportedly made similar profits selling the cement to Israeli contractors at $80 to $100 per tonne.
"This is a national treachery. It is a treasonous act to help build the racist wall at a time when Palestinian children are risking their lives and dying protesting the evil structure," said Khraisha.
Palestinian Authority Minister
of Civilian Affairs Jamil Tarifi
According to the legislative council report, three firms were involved. The main suspect is the Tarifi Company for Concrete Mix (TCCM), headed by Jamal Tarifi, a brother of Jamil Tarifi, the PA Minister of Civilian Affairs, responsible for liaising with Israel.
Prior to the creation of the PA in 1993, Tarifi occupied a prominent position in the Israeli army's "civil administration" in the West Bank, and, thanks to his privileged contacts and connections, was able to amass huge wealth, winning highly profitable contracts from the Israeli occupation government in the West Bank.
And through the years, the Tarifis developed extensive business relations with Israeli firms, enabling them to make millions of dollars in profits, making use of the "special treatment" they received at Israeli checkpoints and roadblocks.
Hence, it was not a coincidence that the licence to import the cement from Egypt was prepared and signed rather surreptitiously at Jamil Tarifi's home in Ram Allah, according to the PA's comptroller Jarrar al-Kidwa.
It is now clear that PA chairman Arafat knew about the affair.
According to Khraisha, on 9 November a letter was sent to Arafat by al-Kidwa, informing him that an "open-ended" licence was being issued to the Tarifis to import the cement from Egypt.
Another letter reportedly notified Arafat that large amounts of the imported cement were being diverted to Israel by truck.
For reasons still unknown, Arafat refused to act, and al-Kidwa, whose appointment in his job has not been approved by the Legislative Council, refused to reveal to the council all subsequent official correspondences with Arafat's office.
Wider issues
Officials in Arafat's office refused to answer questions on the affair, arguing that the matter was being handled by the prosecutor general.
However fears remain that the matter will be whitewashed over as were numerous previous corruption scandals.
Notwithstanding its gravity, the current scandal represents only a small part of the huge corruption phenomenon inundating the Palestinian Authority.
Indeed, one could argue that corruption, with its various manifestations and expressions such as bribery, nepotism, favouritism, cronyism, kickbacks, pitfall profits and embezzlement and theft, served as the modus operandi of the PA operations since day one.
The phenomenon, say those who know, is so overwhelming that it will take Palestinian society many years to resolve, supposing there is the will and power to do so.
SOURCE: Aljazeera
Khalid Amayreh


CHI is a grassroots response to modern trouble.
CHI is a living, breathing initiative toward an economy of life, with our contributions recognized in all of their forms ~ from need, to talent, to knowledge, wisdom, perspective and materials.
CHI is taking up the inherent responsibility in humans to care for all beings and our Mother Earth who sustains us.
CHI is connecting to nature and village ways for the health of people, families, communities and systems for sharing, caring, growing and building.
CHI is re-cogniz-ing the sentience of all beings, their value, their autonomy and chemistry in creative purpose.
CHI is a healing and reconciliation of the feminine and masculine energies within us, their outward expression, and the way we balance them in all we are and make.
CHI is knowing that economies and ecologies go hand in hand, and that humans and the way humans organize are ecologies within ecologies within and beside ecologies.
Healthy Human + Healthy Relationships = Healthy ecologies/economies.
All is connected. Generation generates. Degeneration degenerates. Inner, outer. Outer, inner. Life.
CHI is life making life in a partnership of shared vision, morals, needs and active creativity.
CHI is a conversation about waking up to what is going on in the world and responding as if the fate of all beings and creation is held in the care of the village.
CHI is being co-founded by a growing list of people acting as community healing facilitators. We meet weekly in the CHI Hub for sharing, learning, healing, and co-creating. We work through grief and support each other with personal dreams and needs. We apply this growth to the illumination and expansion of CHI.
CHI was initiated into the world publicly on the Spring Equinox of 2016 by Patti Lindgren Gera and Esther Stenberg with support from Randy Thomas Jones and Rob Brown.
CHI is informed by the spirit and soul of life itself. It is an impetus, intelligence and power for natural co-creation and we who gather are learning how to attune.
We thank the Ancestors for all they have done to help us get here. We thank every human and every being for all we have witnessed, experienced, held, grieved, and moved for all time.
Many people from in and around Saskatoon have participated in events of varying types for healing and creativity with CHI's first year. Gratitude to each and every one who has come to share the learning and growing.
In December or 2016, Patricia Smith joined the CHI Hub as a co-founding community healing facilitator. We grow with each soul who latches on and makes a commitment to a healing our original nature and village heart, with the hub growing into a strong core visited and even frequented by others, regularly.
CHI is meant to be in a public space, where we all share ownership, responsibility, resources, and benefits. We are working toward a community funded centre for conscious healing and co-creating, a model physical village, and a vibrant network of community healing facilitators competent and excelling in natural and village healing knowledge, wisdom, and intent.
CHI is a non-registered, non-profit, non-governmental, non-religious collaboration of ordinary people, causing the kind of community that is in touch with its roots and its truths, working together to enjoy life while causing health and benefit for all.


Pira Sand Castle – Tiny Paper Co.
Give free rein to your imagination and impress your friends with these fantastic, professional-looking architectural sculptures. Simply fill and press to shape, then stand back and admire your own 3-layered pyramid construction. With the click-and-stack design, cleaning and transport is as easy as the building.
All Quut products comply with Australian and New Zealand toy safety and chemical standards: AS/NZS ISO 8124. All Quut products are BPA and latex free and are recyclable.


Convention-oriented High-rise Hotel with brick facade situated in McCamly Marketplace & adjacent to Kellogg Arena.
In Battle Creek, 20 miles from Kalamazoo. Hamblin Ave.. Downtown Battle Creek, part of Kellogg Arena, McCamly Mall Complex. Beach.


text:
Aethelstan, King of the English
(AD 895-939)
Aethelstan was the eldest, but illegitimate, son of King Edward the Elder, born to his common-law wife, Egwina, in AD 895. When he was only four years old, his father took himself a wife and Aethelstan was sent away to be brought up by his aunt, Aethelflaed, the powerful Lady of the Mercians, at the Royal courts of Tamworth and Gloucester.
The circumstances surrounding the Royal succession upon the death of Aethelstan's father, in July AD 924, are shrouded in confusion. Aethelflaed had died some years before, and it appears that Edward may have intended his kingdom to be divided between Aethelstan in Mercia and his eldest legitimate son, Aelfweard, in Wessex. Alternatively, when Aelfweard succeeded, the Mercians may simply have rejected him. There was certainly tension between the two, which ended up with Aelfweard's mysterious death only two weeks later. Aethelstan was now King of all England, but he faced further opposition from an otherwise unknown prince named Alfred. Possibly he was a grandson of King Aethelred I. Eventually however, Aethelstan was secure enough to hold his coronation ceremony, and he was crowned at Kingston in the September of the following year.
Aethelstan soon set about consolidating his position in England. He signed an alliance treaty with King Sigtrygg of York in AD 926, but this unfortunately collapsed upon the latter's death the following year. Aethelstan was forced to move north to re-assert his influence over, if not his control of, Norse York. His mighty army swept across York and Northumbria, expelling the new king, Olaf Sigtryggson. At Eamont, Aethelstan received the submission of High-Reeve Eldred I of Bamburgh and Kings Constantine II of the Scots and Owen of Strathclyde; and a peace treaty - the Treaty of Penrith - was signed with the Scottish monarchs ending the aggression of the past decade. Around the same time, Kings Hywel Dda of Deheubarth and Owain of Glywysing & Gwent felt it wise to submit to Aethelstan's overlordship at Hereford; and the border between England and Wales was formerly set at the River Wye. The Welsh rulers, this time including the Gwynedd king, re-attested their loyalty by attending Aethelstan at the English court, four years later. They were later followed by King Tewdr of Brycheiniog.
Despite becoming one of the most powerful monarchs Britain had ever seen, it seems that the Wessex party were still not happy with Aethelstan's leadership. They apparently plotted to have him blinded at Winchester and replaced by the late Aethelweard's full-brother, Edwin. Whether the plot simply failed or was uncovered is not clear, but in AD 933, the men of Wessex seem to have broken out into open rebellion for there was "disturbance in the kingdom". Aethelstan's forces managed to drive Edwin abroad, but he died in a storm at sea. It has been suggested that, after this event, Aethelstan deliberately refrained from acquiring a direct heir to his kingdom, so that the two parties would reconcile after his death.
Perhaps Constantine II of the Scots saw this chink which wessex opened in Aethelred's armour. For, the following year, he broke their seven-year peace and attacked England. Aethelstan moved quickly and led a vast land and sea campaign into Scotland, whilst compelling his Welsh sub-Kings to help swell his army's numbers. They ravaged the northern kingdom as far as Dunottar (near Aberdeen), while the naval force sailed to Caithness! In AD 937, Constantine retaliated by forming a powerful alliance with the British subjects of King Owen of Strathclyde and the Norse warriors of King Olaf Guthfrithson of Dublin. A great invasion army marched south, but Aethelstan was ready for them and the Northerners were soundly defeated at the Battle of Brunanburgh.
Aethelstan was now effect overlord of all Britain and he even claimed such a title on his coinage and in his Royal charters. The latter throw much light on the organization of Aethelstan's Royal government. Between AD 928 and 935, his charters were written by a single man, perhaps a royal scribe. Seven of his lawcodes also survive. Four were officially drawn up for the King himself: one a proclamation from Grately and another from Exeter. It is not surprising that foreign scholars flocked to such a highly ordered Royal Court: amonst them, the Irish, Bretons, Franks, Germans and Italians. Notable individuals included the Icelander, Egill Skallagrimsson, and Israel the Grammarian. King Aethelstan had even more European contacts than his grandfather, Alfred the Great. He married off four of his half-sisters to noble continental families, including a German Emperor and a Frankish King. When the latter, Charles the Simple, was imprisoned by his enemies, his wife, Edith, brought their son and heir, Prince Louis, to England. Like Duke Alan of Brittany and Prince Haakon of Norway, he was fostered at Aethelstan's Royal Court.
Aethelstan was a religious man who patronised a number of Wessex monasteries. He founded Muchelney Abbey in Somerset, for example. His generosity to the Church was well-known, not just in terms of money, but books and other holy treasures. Aethelstan was also an enthusiastic relic collector and sent out agents across Europe to acquire them. Milton Abbey in Dorset was especially pleased with his gift of St. Samson's arm and St. Branwaladr's head which made it into an important pilgrimage centre. He died on 27th October AD 939 and was buried, not in the family mausoleum in Winchester, but at his favourite abbey at Malmesbury. A medieval tomb bearing his effigy can still be seen there today. Aethelstan was succeeded by his half-brother, Edmund.
Click for More Images of King Aethelstan


Located on the banks of the Hudson River in Beacon, New York, Dia:Beacon is just an 80-minute train ride from Grand Central Terminal. Occupying a former Nabisco box printing factory, the museum is the home for Dia's collection of art from the 1960's to the present as well as special exhibitions, new commissions, and public and education programs.
House located in Brittany in a natural protected area with a view of the sea and the dunes. Access to the beach within 900 m. Possibility to rent the house for a weekend or vacation.
Built over the thermal springs in the Graubünden Canton in Switzerland, Therme Vals is a hotel and spa in one which combines a complete sensory experience designed by Peter Zumthor.
Roden Crater is a natural cinder volcano situated on the southwestern edge of the Painted Desert in Northern Arizona.


Electric Guitar Amp Head All valve, 30 watt, channel switching head. This guitar amplifier sports two dual stage channels with completely separate signal paths. The result is two vintage amps in one. Channel One has a thick, creamy, classic voice that barks like a rottweiler when pushed in to the tone zone. Channel Two has a tighter, springy and slightly faster character with a little more upper mids and a bit more gain. This amp has proved to be so popular worldwide that its specification remains unchanged. It is fast becoming the new world standard for 30 watt Class A valve amplifiers.
Do you own Orange AD 30 HTC Head or have you had a chance to try it?
2 éve használom, igazi böszme british sound, nagyon jól kijön zenekarban, közép-magas dús, szép a tisztája is nagyon, alkalmas rentgeteg zenére.
Je to fajn do skúšobňe aj na pódium. Orange je tutti frutti značka.


The iconic Titus Racer-X has been replaced by a lighter and more modern frame simply called X.
The curved tubes allow much more fork crown clearance than before.
The shock mount is machined from an extruded chunk of aluminium.
The Racer-X will continue on but is now substantially less expensive at US$1,695.
The Racer-X Carbon now becomes the X Carbon and drops some 300g in the process.
An all-new rear end shaves 175g on its own.
Asymmetrical hydroformed chain stays grace the rear end of the X Carbon.
The new bottom bracket and main pivot mount is now a carbon unit with aluminium inserts instead of the old version's heavy cast aluminium bit.
A one-piece carbon link replaces the previous three-piece link.
The seat stay bridge has now moved ahead of the seat tube for more tire clearance.
The X Carbon wears an integrated head tube that is apparently stiffer than the old one while also offering a cleaner look.
The FTM replaces the Motolite in the Titus lineup.
Like on the X, the FTM wears an all-new rear end.
A one-piece carbon link is used here as well.
The curved tubes on the FTM add fork crown clearance and also lend a more modern look.
The FTM seat post and seat tube grow in diameter relative the Motolite, which will continue in the lineup as a lower-end model.
The FTM shock mount is milled from extruded aluminium.
The aluminium El Guapo drops 150g from last year.
aluminium El Guapos now all use 1.5″ front ends.
ISCG05 tabs have been added to the El Guapo for 2009.
The burly aluminium link still uses two mounting positions to alter the linkage rate depending on if you're using an air or coil shock.
New for 2009 is the Fireline Steel Exo hardtail.
The Ligero is gone but the Solera gets upgraded with an Isogrid top tube.
The Exogrid-tubed Vuelo carries on for 2009.
The Jamis Xenith SL now uses a tapered steerer tube and a BB30 bottom bracket.
The tapered fork is stiffer and better handling yet gains no weight thanks to its fully hollow construction.
A BB30 bottom bracket beefs up the drivetrain and also reduces weight.
Jamis has swapped from Easton to 3T on the Xenith and the SL even uses a traditional bend handlebar.
…though the trailing edges have been rounded throughout for better aerodynamic performance in crosswinds.
…such as the Windshield fork and brake setup.
The Supernova is ready to hit the 'cross circuit with its lightweight aluminium frame and discipline-specific top tube shaping.
The flattened part of the top tube is moved closer towards the middle where it's actually used.
Lighter dropouts now sprout fender mounts.
As is now becoming standard practice, Jamis showed off a show special version, in this case based on the Supernova.
Zipp carbon tubulars and TRP EuroX Magnesium brakes dump heaps of weight.
The Selle San Marco Superleggera saddle on the Jamis show special is undoubtedly light but we're not sure we'd like to jump on it during a 'cross race.
The Jamis Sonik track bike is stiffer and quicker for 2009.
The hydroformed seat tube allows the wheel to tuck in tighter.
Steel-lined horizontal dropouts and an American Classic 420 Track wheelset round things out.
Now this is good thinking: replaceable barrel nuts offer some cheap insurance in case the seat binder is overtightened.
Jamis has brought back the Eclipse to mark its 20th anniversary. The Eclipse returns to an all-steel configuration using Reynolds 853 tubes.
The Dakar XCR racer gets upgraded pivot hardware for better suspension tracking.
An all-new Dakar XCT offers near-XCR weight but will more capable suspension and handling for trail bike duty.
The Dakar XCT main frame uses swoopy tubes.
Jamis equips the Dakar XCT with its familiar mp3 rear suspension system.
The longer-travel XAM receives upgraded pivot hardware as well and will come stock with Truvativ's new HammerSchmidt system.
The Jamis XAM offers plenty of beef for heavy-duty trail use.
A stout aluminium link keeps things tracking true.
Van Dessel's Gin & Trombones is so popular that it's nearly sold out already.
This year's Gin & Trombones gets upgraded to a tapered 1 1/8″-to-1 1/2″ front end.
Bigger and/or stronger 'cross riders might opt for the all-aluminium Hole Shot.
The Rivet road racer gets a tapered front end and BB30 bottom bracket.
The bigger lower fork diameter makes for better braking and more precise handling.
The BB30 bottom bracket is an optional upgrade.
The Rivet is just 1050g and is reasonably priced, too.
Milled-out aluminium dropouts retain durability while shaving a few precious grams.
The all-aluminum Hellafaster is apparently Van Dessel's go-to frame for riders who want über-stiffness.
The Drag Strip Courage gets bigger and burlier tubing for 2009.
It's unlikely most riders will be able to flex this back end.
…vertical dropouts and disc brakes front and rear.
The 29″-wheeled Jersey Devil continues on unchanged for 2009.
My, how the landscape has changed at Titus.
After a long run as one of the most popular full-suspension cross country rigs around, the venerable Racer-X is now replaced by a lighter and fancier model simply dubbed X. Hydroformed aluminium tubing up front sheds about 100g and adds fork crown clearance while a completely new rear end drops another 175g.
The asymmetrical chain stays are now hydroformed as well while the 'Light Rail' seat stay assembly now becomes a one-piece carbon construct with a reinforcing bridge placed ahead of the seat tube instead of behind for more tire clearance. The rocker link is now a stiffer one-piece carbon bit as well. Rear wheel travel gets a modest bump to 105mm but the suspension kinematics have been adjusted for a more linear feel.
The suggested retail for the X frame is US$2,295 with a Fox RP23 rear shock. Last year's Racer-X will still be offered but it now occupies the 'entry position' in the Titus full-suspension lineup with a retail price of just US$1,695 with a Fox RP2 shock. An extra US$100 will also net Racer-X buyers their choice of 14 different powdercoat colours and customisable decals.
The racer-x carbon now becomes the x carbon and drops some 300g in the process.: the racer-x carbon now becomes the x carbon and drops some 300g in the process.
Last year's Racer-X Carbon has been nixed completely, though, in favour of a new X Carbon. Though the main triangle bears a nearly identical appearance to its predecessor (clearly most of the mould was reused), frame weight has now dropped about 220g to a more competitive 2.22kg (4.9lb).
The previous cast aluminium bottom bracket-main pivot assembly has been replaced by a more advanced all-carbon piece with aluminium inserts and the front end sprouts a beefier head tube complete with integrated headset. The rear end is shared with the standard X.
In addition to the X and X Carbon, Titus will also offer and X Exogrid and X Ti.
The ftm replaces the motolite in the titus lineup. : the ftm replaces the motolite in the titus lineup.
The Motolite trail bike sees similar changes with the introduction of the FTM. The hydroformed 6000-series front triangle and asymmetrical chain stays, one-piece carbon seat stay assembly and one-piece carbon rocker link yield about 300g of weight savings while travel actually increases from 127mm to 135mm. The seat post grows to 30.9mm and the seat tube is correspondingly bigger and stiffer, too.
Suggested retail on the FTM is US$2,295; last year's Motolite will stay in the lineup but drops in price to just US$1,695. An extra US$100 earns the same Titus Signature Paint options as on the Racer-X.
The aluminium el guapo drops 150g from last year.: the aluminium el guapo drops 150g from last year.
Titus applies the tube shaping formula to the aluminium 155mm-travel El Guapo, too, but in this case manufacturing partner Kinesis uses pressurized gas instead of fluid to push the tube walls out against the die. The curvy ATF (Advanced Thermo Forming) tubes shed 150g from last year's bike and the '09 version now even sprouts ISCG05 chainguide tabs, too. As was introduced on the El Guapo Ti, a 1.5″ head tube will now come standard.
New for 2009 is the fireline steel exo hardtail. : new for 2009 is the fireline steel exo hardtail.
Adding yet more ammunition that hardtails aren't dead, last year's Fireline expands with a steel Exogrid model that will be offered in both 26″ and 29″-wheeled versions.
The ligero is gone but the solera gets upgraded with an isogrid top tube.: the ligero is gone but the solera gets upgraded with an isogrid top tube.
Road-wise, the stellar Ligero sadly doesn't make the cut into 2009 but the Solera gets upgraded with an Isogrid top tube to supplement its Isogrid down tube. The Exogrid-tubed Vuela is unchanged and the Estrella carries the torch as the sole all-titanium road model.
The jamis xenith sl now uses a tapered steerer tube and a bb30 bottom bracket.: the jamis xenith sl now uses a tapered steerer tube and a bb30 bottom bracket.
Jamis Bicycles is among the latest to adopt the tapered front end concept with the next iteration of its top-end Xenith road line. In addition to the greater steering precision and braking performance that the bigger diameter affords, Jamis also says that the additional real estate allowed it to make the fork completely hollow from top to tips for virtually zero net weight gain. The lower end grows in size as well with the addition of a BB30 bottom bracket shell.
The top-end Xenith SL retains its speedy Zipp 404 carbon tubulars, SRAM Red group and FSA K-Force Light crankset but last year's Easton bits have been replaced with ones from 3T including a traditional-bend Rotundo LTD carbon bar.
Not too much has changed on the Xenith time trial variant, the Xenith T, though more rounded trailing edges are said to improve aerodynamic performance in crosswinds. An extra-small size with 650c wheels has also been added.
Time trialists and triathletes on more of a budget might also consider the revised Trilogy. For US$2,400, you get an aero-shaped aluminium frame with carbon seat stays, a Windshield fork similar to that used on the Xenith T with its shrouded, reverse-mounted brake, and a bottom bracket-mounted rear brake as well.
The supernova is ready to hit the 'cross circuit with its lightweight aluminium frame and discipline-specific top tube shaping.: the supernova is ready to hit the 'cross circuit with its lightweight aluminium frame and discipline-specific top tube shaping.
'Cross season is upon us yet again and the Jamis Supernova seems ready for the challenge with a revised top tube shape whose flattened portion has now been moved towards the middle of the tube closer to where it's actually used. The new top tube is a bit lighter, too, as are the new chain stays and dropouts; total weight saved amounts to about 100g.
The jamis sonik track bike is stiffer and quicker for 2009.: the jamis sonik track bike is stiffer and quicker for 2009.
If track is more your style, the 2009 Sonik might be what you're looking for. The newly hydroformed seat tube now curves sharply around the rear wheel and makes for much shorter chain stays (now just 370mm long). Aero profiles are used for the down tube, seat tube and seat stays and the competition-ready spec includes an FSA Carbon Track crankset, American Classic 420 Track wheels and a Deda Zero100 stem and Pista bar. Tasty.
The dakar xcr racer gets upgraded pivot hardware for better suspension tracking.: the dakar xcr racer gets upgraded pivot hardware for better suspension tracking.
For the off-road crowd, the race-ready 100mm-travel carbon fibre Dakar XCR Team and Pro models receive a carbon shock link for 2009 and bigger 10mm hardware for better stiffness all around. The spec on the top-shelf Team model gets even more race-specific: last year's XTR crank and RockShox Reba World Cup are now swapped for a two-ring FSA K-Force Light carbon crank and RockShox SID World Cup.
2009 will also bring a new 5″-travel Dakar XCT. A light and curvy Kinesium main triangle is joined to 7005 stays and arranged in Jamis' usual mp3 suspension linkage design with 130mm of rear wheel travel. Maximum front wheel travel is 130-140mm, depending on model, and the top two offerings in the range will also come equipped with 15mm thru-axle forks from either Fox Racing Shox or Marzocchi.
Van dessel's gin & trombones is so popular that it's nearly sold out already.: van dessel's gin & trombones is so popular that it's nearly sold out already.
Van Dessel has earned a bit of a cult following for its Gin & Trombones cyclo-cross frame. So much so, in fact, that the company is apparently already sold out of some sizes for the year, meaning that whatever is on hand at your local dealer might be all there is.
This year's edition gets a big upgrade in the form of a tapered 1 1/8″-to-1 1/2″ front end complete with a Van Dessel-branded all-carbon fork. The added beef offers more steering precision but also substantially cuts down on brake chatter and thus improves control as well, according to company founder Edwin Bull.
Otherwise, the comfy 7005-series aluminium frame with carbon seat stays is mostly unchanged and claimed frame weight remains essentially unchanged at around 1450g.
A Gin & Trombones frame, fork and headset (if you can find one) is just US$999; complete bikes with SRAM Rival will go for US$2,299.
Bigger and/or stronger 'cross riders might opt for the all-aluminium hole shot.: bigger and/or stronger 'cross riders might opt for the all-aluminium hole shot.
'Cross riders looking for even more rigidity can turn to the Van Dessel Hole Shot. Though it uses a standard straight-walled 1 1/8″ front end, Bull says the Hole Shot offers a more solid ride feel, particularly for bigger and stronger riders. The all-aluminum triple-butted construction adds just 100g to the Gin & Trombones but frameset price drops to just US$599. Complete bikes with SRAM Rival will retail for US$1,899.
The rivet road racer gets a tapered front end and bb30 bottom bracket.: the rivet road racer gets a tapered front end and bb30 bottom bracket.
The carbon fibre Rivet road racer gets the tapered 1 1/8″-to-1 1/2″ treatment as well but also gains an optional BB30 bottom bracket to produce better responsiveness at both ends. The thin-walled, large-diameter tube-to-tube carbon construction is claimed to provide excellent stiffness, too, while still remaining comfortable enough for long days in the saddle. Claimed frame weight is a reasonable 1050g.
Suggested retail on a Rivet frame, fork and headset is US$1,899. The BB30 version will fetch US$2,499 with an included FSA K-Force Light crankset with ceramic bearings and complete bikes with SRAM Red and Easton EA90 wheels will also be on tap for US$5,799.
The loveable Country Road Bob gets some tweaks, too, in the form of an eccentric bottom bracket, vertical dropouts, and disc brakes at both ends while the Drag Strip Courage track bike gets a bit heavier but also markedly more rigid with a bigger aluminium tubeset.
The 29″-wheeled Jersey Devil HT and Ramble Tamble carry over unchanged.


What do you do when you want a low profile spill deck but also need to stay in compliance with federal containment regulations? GEI Works offers a self-contained spill deck with both a low profile and an attached bladder. In case of an accident, the bladder will automatically unfurl, allowing the spill to drain without overflowing the deck.
These spill containment decks provide spill control for one, two, or four 55-gallon drums. When the spill decks reach their sump capacities, the 66-gallon polyethylene bladder opens from the housing unit attached to the deck for additional containment. Lightweight and durable, the spill containment deck itself is also made from polyethylene, so the deck spill kit will not crack, swell, rust, or corrode when exposed to chemicals.
While not able to be transported with a pallet jack or fork lift, the low profile of the spill containment deck makes loading it with barrels painless, even without the optional loading ramp.
The included bladder attachment allows the spill containment decks to comply with EPA Container Storage Regulation 40 CFR 264.175 and Uniform Fire Code Spill Containment Regulations.
See all our available secondary containment options on the Secondary Containment Pallets page.
Questions about deck spill kits? We can help! Call our team at 1-772-646-0597 or fill out our quote request form to discuss your requirements.
1 Drum Deck Bladder System 25 7/8" x 30 1/2" x 5 3/4"
(657 mm x 775 mm x 146 mm) 1,500 lbs.
2 Drum Deck Bladder System 52" x 30 1/2" x 5 3/4"
(1,321 mm x 775 mm x 146 mm) 3,000 lbs.
4 Drum Deck Bladder System 52" x 56 5/8" x 5 3/4"
(1,321 mm x 1,438 mm x 146 mm) 6,000 lbs.
Looking for a different deck spill kit? Visit our Spill Decks page.
Questions about spill decks? We can help! Call our team at 1-772-646-0597 or fill out our quote request form to discuss your requirements.


EvoChain is a blockchain technological innovation that offers businesses and institutions the ability to benefit from blockchain technology, by applying it to smart invoices, and instant issue Visa Debit Card Numbers, enabling purchases through crypto even on sites that don't accept crypto payments, by utilizing smart invoices, no coding required, with no fees. The benefits of smart invoicing include error-proof payment systems in which payment receipt errors are impossible by design. Furthermore, EvoChain is compatible universally with other cryptos. Payments can be made or received in all cryptocurrencies. EvoChain's interconnectivity is made possible by a inter-compatibility layering protocol which makes communication between chains simple, secure, and instant. By design, the larger the transaction network grows, the more secure it becomes, the faster it operates, without any scaling issues no matter how many transactions occur.
Mutual gain is the philosophy of EvoChain's development process. Rather than a design model centered around an antagonistic mindset that puts crypto in the crosshairs of big banks, we've decided through careful reasoning that the best approach moving forward for all cryptocurrency is one that incorporates everyone's interests and presents a mutual benefit to all parties involved. EvoChain is a blockchain technological innovation that offers businesses and institutions the ability to benefit from blockchain technology, by applying it to smart invoices, and instant issue Visa Debit Card Numbers, enabling purchases through crypto even on sites that don't accept crypto payments, by utilizing smart invoices, no coding required, with no fees. The benefits of smart invoicing include error-proof payment systems in which payment receipt errors are impossible by design. Furthermore, EvoChain is compatible universally with other cryptos. Payments can be made or received in all cryptocurrencies.


1.Fine silica gel contact surface: one side of the fine silica gel head, gently brush the parts that need to be removed from the blackhead and the parts that need to be strong cleaned, a few strokes can remove blackhead and acne.
2.Thick silicone contact surface: soft pressing the face to exfoliate, also promote blood circulation, increase skin elasticity and vitality.
3.The end part : a circle can be used to remove the blackheads from the mess and the effect of the fat granules and the laps of the acne needles. It can be pressed and scraped blackheads.
4.This cleansing brush is made of high quality silicone material, easy to clean and durable.
5.This product is suitable for people with sensitive skin. The special design of the product can protect the skin well.


This chic cocktail club is self-described as an "elegant place for dirty kids." If Donna was a super hero, her daytime persona would be Darla - the coffee-drinking professional with a creative job and by night, a disco queen with whiskey for blood and stars in her eyes. Double down at the Donna and do right by your next dance-the-night-away.
DONNA is an elegant space for dirty kids; a Williamsburg cocktail bar that takes pride in our loyal local customers and thoughtfully crafted libations. Fully recovered from an electrical fire that left our friends' highballs empty for half a year, we're re-opening the doors at Donna with a myriad of new, clever and delicious cocktails, tasty tacos by Jesse Kramer's Brooklyn Taco, and the same light & airy central American inspired ambiance by hOmE, that has drawn people to Donna since it opened in 2012.
Friday/Saturday nights and Holidays are not available for private rental without a buy out after 7pm.
Donna Cocktail Club's cocktail menu is as inspired by music as it is by Central American flavors. Guest DJs often light up the night with an eclectic set of tunes. The ringleaders of Donna have music side projects ands their love of good rhythm permeates the venue. Donna Cocktail Club is also opened in the daytime, serving deliciously smooth coffee.
Walking distance away from Williamsburg Bridge views, Donna Cocktail Club brings Central American flare to Williamsburg. Donna provides patrons with serious cocktails without serious attitude. Jeremy Oertel and his bartending super-team offer a welcoming vibe while you sit at the bar. A mainstay and favorite of the bar are the cocktails on tap, including the refreshing Brancolada. The high-vaulted ceilings, long bar, high tables and many seated areas together offer a great opportunity to host an intimate event in a setting that will not overwhelm.
The venue was designed by the Brooklyn design duo, Evan and Oliver Haslegraves of hOmE. The high-vaulted ceilings and many windows foster the open, spacious vibe of Donna's interior. By day, excellent outside light pours through the windows, by night the warm wooden tones offer a beautiful glow against the white-washed walls.
Donna has partnered with Cafe Integral to offer a full menu of coffee drinks during the day. Aside from the assortment of draft cocktails, Donna also offers custom made punch bowls for large groups that provide approximately 50 servings. Please request 24-hours in advance.
Awards & Notables Donna Cocktail Club has been featured in Food & Wine, The Wall Street Journal, The Huffington Post, Complex, Paper Magazine, Eater NY, The Village Voice, Guest of a Guest, Gothamist, Thrillist, Refinery 29, Punch Drink, Booze Menus, New York Observer, Brooklyn Magazine, Lonny and City Brewed.
The menu offers a modern take on traditional Mexican classics with a la carte, or prix fixe pricing for large groups. Outside food is permitted with private rentals only.