text:
Scott DesJarlais & Darrell Issa
Compare the voting records of Scott DesJarlais and Darrell Issa in 2013-14.
Scott DesJarlais
Represented Tennessee's 4th Congressional District. This was his 2nd term in the House. He is a current member of Congress.
Represented California's 49th Congressional District. This was his 7th term in the House. He left the House in 2019.
Scott DesJarlais and Darrell Issa are from the same party and agreed on 93 percent of votes in the 113th Congress (2013-14).
Dec. 11, 2014 — An Act to require the Secretary of the Interior to assemble a team of experts to address the energy needs of the insular areas of the United States and Freely Associated States through the development of energy action plans aimed at promoting access to energy
Feb. 11, 2014 — To designate the air route traffic control center located in Nashua, New Hampshire, as the
Concurring in the Senate Amendments with an Amendment
Jan. 15, 2014 — To extend the application of certain space launch liability provisions through 2014
On Motion to Recede and Concur in the Senate Amendment with Amendment
Dec. 12, 2013 — Making continuing appropriations for fiscal year 2014, and for other purposes
Oct. 30, 2013 — Relating to the disapproval of the President
On Motion to Concur in the Senate Amendments
Oct. 16, 2013 — To condition the provision of premium and cost-sharing subsidies under the Patient Protection and Affordable Care Act upon a certification that a program to verify household income and other qualifications for such subsidies is operational, and for other purposes
July 24, 2013 — Amash of Michigan Amendment No. 100
March 21, 2013 — Department of Defense, Military Construction and Veterans Affairs, and Full-Year Continuing Appropriations Act, 2013
March 6, 2013 — Department of Defense, Military Construction and Veterans Affairs, and Full-Year Continuing Appropriations Act, 2013
Feb. 28, 2013 — Violence Against Women Reauthorization Act of 2013
Jan. 4, 2013 — To temporarily increase the borrowing authority of the Federal Emergency Management Agency for carrying out the National Flood Insurance Program
Dec. 11, 2014 — John Muir National Historic Site Expansion Act
Dec. 10, 2014 — Intelligence Authorization Act for Fiscal Years 2014 and 2015
Dec. 4, 2014 — Protecting Volunteer Firefighters and Emergency Responders Act of 2014
July 9, 2014 — McClintock of California Amendment
July 9, 2014 — Wenstrup of Ohio Amendment
June 20, 2014 — Franks of Arizona Amendment
June 20, 2014 — Rohrabacher of California Amendment
June 11, 2014 — Broun of Georgia Third Amendment
June 11, 2014 — Royce of California Amendment No. 7
May 30, 2014 — Massie of Kentucky Amendment
May 30, 2014 — Bonamici of Oregon Amendment
May 29, 2014 — Polis of Colorado Amendment
May 29, 2014 — Thompson of California Amendment
May 22, 2014 — Schiff of California Part A Amendment No. 21
May 22, 2014 — Jenkins of Kansas Part A Amendment No. 15
May 8, 2014 — Electrify Africa Act of 2014
May 1, 2014 — Nugent of Florida Amendment No. 1
April 1, 2014 — United States international programming to Ukraine and neighboring regions
April 1, 2014 — To provide for the costs of loan guarantees for Ukraine
March 27, 2014 — To support the independence, sovereignty, and territorial integrity of Ukraine, and for other purposes
March 6, 2014 — To provide for the costs of loan guarantees for Ukraine
Feb. 11, 2014 — To direct the Secretary of the Interior to convey certain Federal features of the electric distribution system to the South Utah Valley Electric Service District, and for other purposes
July 24, 2013 — Mulvaney of South Carolina Amendment No. 55
July 24, 2013 — Jones of North Carolina Amendment No. 48
July 23, 2013 — Denham of California Amendment No. 47
July 23, 2013 — Poe of Texas Amendment No. 25
July 23, 2013 — Nugent of Florida Amendment No. 17
July 18, 2013 — Young of Alaska Amendment No. 2
July 10, 2013 — Whitfield of Kentucky Amendment
July 10, 2013 — Broun of Georgia Amendment
July 9, 2013 — Broun of Georgia Amendment
June 20, 2013 — Fortenberry of Nebraska Part B Amendment No. 100
June 20, 2013 — Courtney of Connecticut Part B Amendment No. 46
June 19, 2013 — Kaptur of Ohio Part B Amendment No. 14
June 14, 2013 — Gibson of New York Part B Amendment No. 36
June 13, 2013 — Rigell of Virginia Part B Amendment No. 9
June 6, 2013 — Ben Ray Lujan of New Mexico Amendment
June 5, 2013 — Cassidy of Louisiana Amendment No. 1
June 4, 2013 — First Broun of Georgia Amendment
May 17, 2013 — Carolyn Maloney of New York Amendment No. 3
Feb. 28, 2013 — McMorris Rodgers of Washington Substitute Amendment
Feb. 4, 2013 — To amend the Public Health Service Act to reauthorize support for graduate medical education programs in children
Jan. 15, 2013 — Rogers of Kentucky Part A Substitute Amendment


Vashikaran specialist who has the talent to practice mantra and tantra vashikaran the Union on issues of human life. Many situations in life, people are annoying, but never able to win over; looking for a suitable way to address the issues, whether it is love marriage or career or family or. To overcome these problems, the appointment of Gaurav Sharma ji is a well-known expert vashikaran in Jamshedpur, Ranchi, Dhanbad from decades of serving the public with as much expertise in astrology. From both skills, it can, of course, is that the actual positive results when someone visits their problems.
If you want a solution that will make your life love marriage peaceful and caring, we are the best source where you will get the same as you wish and need. Our experts have extensive skills more vashikaran, useful in solving the problems arise in a marriage love or life of. If you are looking for the best professional field; you need a if perfect mathematical solutions; if you need to transfer your home or business; If you are looking for Vastu Shastra and Kundli making, and so many substances, you should call + 91-9878980338 meet astrologer Gaurav Sharma, good authority vashikaran.
Having a desire to preserve the love extended or wants to return your love! Of course, it is difficult to maintain or return to private life example. But with vashikaran specialist and astrologer Gaurav Sharma, who has a large and decades of experience in vashikaran his in Jyotish skill Visharad, rattan and rattan Lalkitab, you will notice, I'm sure the results in order to build a strong love relationship. He also practices in Jharkhand as the best expert love vashikaran in Jamshedpur, Ranchi, and Dhanbad serves society with its perfection.
Positive interchanges in for your life where there is only peace and love, we are working very carefully vashikaran mantra and tantra. If you are from the following areas of the state of Jharkhand, should get an appointment with the famous astrologer Gaurav Sharma Ji, which is gold medalist and has won many awards from astrology speckled respected organizations in India, to receive blessings, to make your love life is thriving and successful.


text:
Q: Algebraic structure of the set of (Lebesgue) measurable functions over $\Bbb R^n$ $
\newcommand{\MM}{\mathcal{M}}
\newcommand{\R}{\mathbb{R}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\set}[1]{\left\{ #1 \right\}}
$In my analysis class, we have been discussing certain properties of the set of measurable functions; to introduce some notation, we'll define
$$
\mathcal{M} := \MM(E) := \left\{ f : E \subseteq \R^n \to \R \; \middle| \; f \text{ is measurable} \right\}
$$
under the usual definitions of measurability. We have observed the following properties in this class:

*

*$f,g \in \MM \implies f+g \in \MM$

*$f \in \MM, \lambda \in \R \implies \lambda f \in \MM$ and $f+\lambda \in \MM$ (where $f+\lambda := \{f(x)+\lambda\mid x \in E\}$
These in particular ensure that $\MM$ is a vector space. But we also have

*

*$f,g \in \MM \implies f\cdot g \in \MM$

*$f,g \in \MM$, and $g \ne 0$ a.e. $\implies f/g \in \MM$. (At least, provided we restrict the domain of the quotient to avoid $g(x) = 0$, so it might be a different domain than $f,g$ have. On the other hand, of course, if $g(x) \ne 0$ everywhere, then $f,g \in \MM \implies f/g \in \MM$ very literally. So not quite an invertible multiplication.)

*$\displaystyle \set{f_k}_{k\in\N} \subseteq \MM \implies \sup_{k \in \N} f_k \in \MM$, and $\displaystyle\inf_{k \in \N} f_k \in \MM$, and $\displaystyle\limsup_{k \to \infty} f_k \in \MM$, and $\displaystyle\liminf_{k \to \infty} f_k \in \MM$

*If the limit exists a.e., in particular, then the above gives $\displaystyle \set{f_k}_{k\in\N} \subseteq \MM \implies \lim_{k \to \infty} f_k \in \MM$
This seems like a particularly rich structure, moreso than your average vector space -- we also have closure under multiplication (and it presumably has an inverse). We also have that suprema and infima of sequences, and likewise the limit suprema and infima, also are in the set.
Of course, we can also introduce the $L^p$ norms and make this into whichever we need among a normed space, inner product space, and metric space.
What is the name for such a structure (if one exists), one satisfying conditions such as these? (Perhaps not all of them necessarily, but more than just your usual vector space. Perhaps mentioning other facts or operations as necessary that also hold for $\MM$.)
What would be some other examples of such structures? (Examples other than those tied to measurable functions and measurability, if possible.)

Update: (April 2nd, 2021)
One term that could apply, as noted in the comments, is the notion of an algebra over a field, and a commutative one in particular. We could even say it's unital ($f \equiv 1$ is the obvious identity).
Once we equip the vector space $\MM$ with the usual pointwise multiplication, we have this structure, but there's a lot more to this, namely with the convergence properties.
To some degree, as I've mulled over this, I wonder if they somehow could reflect a "closedness" or "sequential compactness" property. Of course, these are topological properties, and thus we would need to induce a topology. The continuous functions on a compact set have one induced by the supremum norm. Taking a compact domain, then, perhaps $\MM$ would admit these as a subalgebra, since continuous functions are measurable, and that would lead somewhere?

redpajama_set_name: RedPajamaStackExchange


Registered Representative of and securities offered through Berthel Fisher & Company Financial Services, Inc. (BFCFS) Member FINRA/SIPC. Investment advisory services offered through BFC Planning, Inc. Prairie Capital Management, BFCFS, and BFC Planning, Inc. are independent entities.
Due to various state regulations and registration requirements concerning the dissemination of information regarding investment and insurance products and services, we are currently required to limit access of the following pages to individuals residing in states where we are currently registered. Investment products and services are available only to residents of AZ, CA, CO, FL, IA, IL, IN, KS, MN, MO, NY,OR, TX, VA, and WI. Insurance services are available to residents of IA and IL.


text:
Trachinus cornutus є видом риб родини Trachinidae, ряду Perciformes. Поширені у південно-східній частині Тихого океану вздовж берегів Чилі. Морська субтропічна демерсальна риба.

Джерела

Тварини, описані 1848
Дракончик
Риби Тихого океану
Риби Південної Америки
Риби Чилі

redpajama_set_name: RedPajamaWikipedia


Dr. Mishra is Professor of Educational Technology at Michigan State University where he directs the Master of Arts in Educational Technology program. He (with Dr. Matthew J. Koehler) co-chaired the SITE2011 conference and is former chair of the Innovation & Technology Committee of the American Association of Colleges of Teacher Education (AACTE). He is nationally and internationally recognized for his work on the theoretical, cognitive and social aspects related to the design and use of computer based learning environments. He has worked extensively in the area of technology integration in teacher education which led to the development (in collaboration with Dr. M. J. Koehler) of the Technological Pedagogical Content Knowledge (TPACK) framework, which has been described as being "the most significant advancement in the area of technology integration in the past 25 years." The readers and editors of Technology and Learning journal recently named Dr. Mishra as one of the ten most influential people in educational technology. He has received over $7 million in grants, has published over 50 articles and book chapters and has edited two books.


Damcos BRC 1000 - Damcos Actuators Lavastica International | Your supplier of systems and spare parts.
The Damcos BRC 1000 is a Hydraulic Double-acting balanced rotary Actuator with 90° quarter-turn and with a helicon spline. The BRC 1000 is a Actuator that delivers a high torque without the need for large sized. The Damcos BRC 1000 is suitable for the most demanding conditions, from high vibration to severe environments.


text:
Tag: Tag: 上海夜网CS
Senator Varney Sherman Rejects 'Christian State'
Posted in xiwejyvqqmze Written by adminNo Comment
Grand Cape Mount Senator H. Varney Sherman has described Liberia as a country that has been, since its beginning, "very tolerant about individuals' religious beliefs. There is, therefore, no need to ignite any fire in the country by placing in the Constitution that Liberia is a Christian state," he declared emphatically. "One thing we ought not to do is to ignite any fire in our country; one thing we ought not to do is to give a certain group of people in our country the suspicion that we are little by little creating a situation where one day we will discriminate against them; we shouldn't do that."Cllr. Sherman made the statement yesterday at his Capitol Building offices when he hosted Daily Observer's Legislative reporters and Senior Staff for an exclusive interview."I don't know how we are thinking about that (a Christian State) in 2015, honestly; to gain what? This is one country in my mind that is very tolerant about what your beliefs are, and we need to keep it that way."Senator Sherman, who is Christian and a practicing Episcopalian who hails from a predominantly Muslim county, wondered whether Christian state advocates believe that if it were placed in the Constitution that Liberia is a Christian state the Pope would take half of the resources of the Vatican and contribute them to Liberia; "or the United States government will say now that Liberia is a Christian state, this is what we will do for them that we haven't done before?"The Chairman of the Senate Committee on Judiciary, who spoke on the Christian state issue for the first time, said if the question did not come up during the interview with this newspaper, he would not have commented on it until it was brought before the Senate. "Nothing," he cautioned, "goes to referendum unless there is a law passed in this chamber. "We don't need that—a Christian state!"Speaking about the Constitution that declared Liberia an independent state in 1847, Senator Sherman clarified that the circumstances of 1847 or before then are significantly different from now. He referenced a part of the present Constitution which provides that there should be no state religion; that the government shall not support any religion in preference to another religion.He further reflected that the 1847 Constitution did not say Liberia was a Christian state, but rather stated that "we have been endowed by certain inalienable rights, blessed by God Almighty."Senator Sherman, who is chairman of the ruling Unity Party, further reflected that even the framers of Liberian Constitution of 1847 crafted it as similar to that of the United States Constitution, which guarantees freedom of thought, conscience and of religion. It did not say that Liberia was a Christian state. "Professor Samuel Greenleaf of Harvard University who drafted the 1847 Constitution," recalled Counselor Sherman, "did not talk about that; why are we thinking about something like that in 2015, especially given our most recent past?"Liberia, he emphasized, must never think about going back to its most recent past when certain tribes were linked with certain warring factions and religions.The Grand Cape Mount lawmaker said Liberians need to remember the past, and reflect on those things that were responsible for the more than fourteen years of conflict. He declared that it was time to do away with the negatives of the past and put on a progressive posture. "So I won't support anything that says Liberia is a Christian state; I won't support it if it says Liberia should be an Islamic state."Senator Sherman recalled how during his campaigning in his Muslim-dominated Grand Cape Mount County, some people expressed fear that electing him would give the county two Christian Senators, after Senator Edward Boakai Dagoseh.Today, Senator Sherman noted, the county has five Legislators—four are Christians and one is Muslim, even though the county is predominantly Muslim.Some people tried to play on the sympathy and emotions of Cape Mountainians, failing to accept the reality that there is no Cape Mountainian who does not have a Christian or Muslim relative."He recalled that long ago, those who went to Christian mission schools in the county were fortunate to have received Christian education, hence automatically became Christians, and that many of those who did not get Christian education remained Muslims.But the two groups, Christians and Muslims, have brothers and sisters, uncles, aunts and cousins who belong to one of the religions or the other. Yet they live in perfect harmony and have done so all of the time. Share this:Click to share on Twitter (Opens in new window)Click to share on Facebook (Opens in new window) read more
Tags: aishx爱上海, 上海ty都开了吗, 上海免费官方wifi, 上海和庭会所qq, 上海夜网CS, 上海夜网论坛HG, 上海微信大群, 上海楼凤ZE, 南京kb最新, 南京沁水宫贴吧, 在北京约个女孩过夜多少钱呢, 夜上海论坛NM, 浙江杭州水疗会所, 爱上海BQ, 珠江壹号国际娱乐会所价格 Read More
Atkins contributed 'enormously' to Fort St. John
Posted in dafolvurzpez Written by adminNo Comment
He was also a board member with the North Peace Cultural Society, sitting as its secretary."He went about all the work without making a fuss, you could always count on him," said Ruth Ann Darnall, who chairs the PVEA, and taught with Atkins at Alwin Holland.Darnall said news of Atkins' passing is resonating back to his family in Australia, friends on Vancouver Island, and even former students in other provinces.Dawn Ljuden, who worked with Atkins with Stage North, called him a mentor and a confidante, a man who never sought to soak in the limelight, instead preferring to quietly donate his time and his tools."He would never admit it, but he was amazing at designing sets," she said.Advertisement "As much as he hated being on stage, he promised me he would be in it if he had the same three lines he had in high school," Ljuden said."This is a big loss for Fort St. John, not just for Stage North. We're going to feel it for years to come," she said.Atkins integral in local fight against Site C.In a statement, Diane Culling, also with the PVEA, said Atkins in the fight against the Site C dam project from the start, and will remain so until to the end."The fact that the PVEA executive must scramble to ensure that the many balls that Tony always "kept in the air" do not drop now, at the very time we are trying to come to terms with his unexpected death, is a measure of how important he was to the campaign to save our beloved Peace River Valley," Culling wrote in a statement to members."So now Tony is gone. As was Leo Rutledge, and so many people that spent that past forty years working to stop Site C. They have passed the torch to us. And we cannot let them down," Culling continued."Let's put this damn dam to bed once and for all, before another person that loves that valley has to die without knowing that it is safe." "He never looked for thanks. A lot of what he did was quiet and soft in the background, it just made him feel good. He didn't want to be on stage. He wanted to make things happen so every one else could join."Stage North President Gilles Francoeur said "generations of volunteers owe Tony a great debt of gratitude, for without him they literally would not have had a stage to perform on.""Tony was a consistent and unwavering presence in my own life for the better part of twenty years," said Francoeur."I found him to be a profoundly intelligent and funny man. Quick with a joke or a pat on the back. He could lift your spirits with barely a word or none at all."He may not have liked the stage, but Atkins was planning to stand upon one this season in Ljuden's fall production of Macbeth. Atkins had a small role in the play back in his high school days. Ljuden says she'll be dedicating the show to him.Advertisement Sloan said Atkins would always joke that he was "retired, not buried," and remained active in the schools after his retirement."He continued to volunteer with the elementary track meet, was the timer for the district speech contest, and even up until this year, he was active as a judge at the C.M. Finch Science Fair," said Sloan.Atkins a founding member of Stage NorthOutside of the classroom, Atkins was an active member of the community — involved with both the Peace Valley Environment Association (PVEA), where he sat as treasurer since the 1980s. He was also a founder member of Stage North in 1978, where he helped bring productions to life through his set designs, and was volunteer with The Workshop Players in the 1970s.Advertisement He traded in the subtropical airs of Australia for the cooler climes of British Columbia's Peace Country, building a reputation over decades for his dedication to his students, the arts, and the environment in Fort St. John.Long-time resident Tony Atkins died Thursday morning following a fight with cancer. He was 71."He was just one of those wonderful people that we were blessed to have," said Dave Sloan, superintendent of School District 60.- Advertisement -"His passing is too soon."Atkins was just a young school teacher from Australia when came to Fort St. John with a pair of friends in the 1960s, landing a job teaching at Alwin Holland Elementary School. He would later serve as principal of C.M. Finch Elementary until his retirement.Sloan remembered Atkins for his quick wit and dry humour, and for being a pillar of support for new teachers and administrators coming into the district. Atkins mentored many who are senior staff today.Advertisement read more
Tags: 上海夜网CS, 上海夜网MT, 上海夜网WC, 上海夜网论坛LN, 上海夜网论坛ZN, 上海楼凤IC, 九一论坛, 塔城楼凤, 夜上海论坛VH, 成都楼凤店多的小巷子, 松江大学城附近裸推, 百花坊, 适合肢体接触的约会地点, 闵行水磨外卖会所, 陆家嘴楼凤 Read More

redpajama_set_name: RedPajamaCommonCrawl


A massive congratulations to everyone who graded this weekend.
You all worked extremely hard and all your efforts could all be seen on the day.
As you progress with each belt the gradings get harder, so to take another step forward in a tough syllabus is a massive honour.


text:
NSString * const NXOAuth2AccountStoreDidFailToRequestAccessNotification = @"NXOAuth2AccountStoreDidFailToRequestAccessNotification";
NSString * const NXOAuth2AccountStoreAccountsDidChangeNotification = @"NXOAuth2AccountStoreAccountsDidChangeNotification";

NSString * const NXOAuth2AccountStoreNewAccountUserInfoKey = @"NXOAuth2AccountStoreNewAccountUserInfoKey";

#pragma mark Configuration

NSString * const kNXOAuth2AccountStoreConfigurationClientID = @"kNXOAuth2AccountStoreConfigurationClientID";
NSString * const kNXOAuth2AccountStoreConfigurationSecret = @"kNXOAuth2AccountStoreConfigurationSecret";
NSString * const kNXOAuth2AccountStoreConfigurationAuthorizeURL = @"kNXOAuth2AccountStoreConfigurationAuthorizeURL";
NSString * const kNXOAuth2AccountStoreConfigurationTokenURL = @"kNXOAuth2AccountStoreConfigurationTokenURL";
NSString * const kNXOAuth2AccountStoreConfigurationRedirectURL = @"kNXOAuth2AccountStoreConfigurationRedirectURL";
NSString * const kNXOAuth2AccountStoreConfigurationScope = @"kNXOAuth2AccountStoreConfigurationScope";
NSString * const kNXOAuth2AccountStoreConfigurationTokenType = @"kNXOAuth2AccountStoreConfigurationTokenType";
NSString * const kNXOAuth2AccountStoreConfigurationTokenRequestHTTPMethod = @"kNXOAuth2AccountStoreConfigurationTokenRequestHTTPMethod";
NSString * const kNXOAuth2AccountStoreConfigurationKeyChainGroup = @"kNXOAuth2AccountStoreConfigurationKeyChainGroup";
NSString * const kNXOAuth2AccountStoreConfigurationAdditionalAuthenticationParameters = @"kNXOAuth2AccountStoreConfigurationAdditionalAuthenticationParameters";

#pragma mark Account Type

NSString * const kNXOAuth2AccountStoreAccountType = @"kNXOAuth2AccountStoreAccountType";

#pragma mark -

@interface NXOAuth2AccountStore () <NXOAuth2ClientDelegate, NXOAuth2TrustDelegate>
@property (nonatomic, strong, readwrite) NSMutableDictionary *pendingOAuthClients;
@property (nonatomic, strong, readwrite) NSMutableDictionary *accountsDict;

@property (nonatomic, strong, readwrite) NSMutableDictionary *configurations;
@property (nonatomic, strong, readwrite) NSMutableDictionary *trustModeHandler;
@property (nonatomic, strong, readwrite) NSMutableDictionary *trustedCertificatesHandler;

#pragma mark OAuthClient to AccountType Relation
- (NXOAuth2Client *)pendingOAuthClientForAccountType:(NSString *)accountType;
- (NSString *)accountTypeOfPendingOAuthClient:(NXOAuth2Client *)oauthClient;

#pragma mark Notification Handler
- (void)accountDidChangeUserData:(NSNotification *)aNotification;
- (void)accountDidChangeAccessToken:(NSNotification *)aNotification;
- (void)accountDidLoseAccessToken:(NSNotification *)aNotification;

#pragma mark Keychain Support

+ (NSString *)keychainServiceName;
+ (NSDictionary *)accountsFromDefaultKeychain;
+ (void)storeAccountsInDefaultKeychain:(NSDictionary *)accounts;
+ (void)removeFromDefaultKeychain;

@end

@implementation NXOAuth2AccountStore

#pragma mark Lifecycle

+ (id)sharedStore;
{
    static NXOAuth2AccountStore *shared;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        shared = [NXOAuth2AccountStore new];
    });
    return shared;
}

- (id)init;
{
    self = [super init];
    if (self) {
        self.pendingOAuthClients = [NSMutableDictionary dictionary];
        self.accountsDict = [NSMutableDictionary dictionaryWithDictionary:[NXOAuth2AccountStore accountsFromDefaultKeychain]];
        self.configurations = [NSMutableDictionary dictionary];
        self.trustModeHandler = [NSMutableDictionary dictionary];
        self.trustedCertificatesHandler = [NSMutableDictionary dictionary];

        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(accountDidChangeUserData:)
                                                     name:NXOAuth2AccountDidChangeUserDataNotification
                                                   object:nil];

        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(accountDidChangeAccessToken:)
                                                     name:NXOAuth2AccountDidChangeAccessTokenNotification
                                                   object:nil];

        [[NSNotificationCenter defaultCenter] addObserver:self
                                                 selector:@selector(accountDidLoseAccessToken:)
                                                     name:NXOAuth2AccountDidLoseAccessTokenNotification
                                                   object:nil];
    }
    return self;
}

- (void)dealloc;
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}

#pragma mark Accessors

@synthesize pendingOAuthClients;
@synthesize accountsDict;

@synthesize configurations;
@synthesize trustModeHandler;
@synthesize trustedCertificatesHandler;

- (NSArray *)accounts;
{
    NSArray *result = nil;
    @synchronized (self.accountsDict) {
        result = [self.accountsDict allValues];
    }
    return result;
}

- (NSArray *)accountsWithAccountType:(NSString *)accountType;
{
    NSMutableArray *result = [NSMutableArray array];
    for (NXOAuth2Account *account in self.accounts) {
        if ([account.accountType isEqualToString:accountType]) {
            [result addObject:account];
        }
    }
    return result;
}

- (NXOAuth2Account *)accountWithIdentifier:(NSString *)identifier;
{
    NXOAuth2Account *result = nil;
    @synchronized (self.accountsDict) {
        result = [self.accountsDict objectForKey:identifier];
    }
    return result;
}

#pragma mark Manage Accounts

- (void)requestAccessToAccountWithType:(NSString *)accountType;
{
    NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];
    [client requestAccess];
}

- (void)requestAccessToAccountWithType:(NSString *)accountType
   withPreparedAuthorizationURLHandler:(NXOAuth2PreparedAuthorizationURLHandler)aPreparedAuthorizationURLHandler;
{
    NSAssert(aPreparedAuthorizationURLHandler, @"Prepared Authorization Handler must not be nil.");

    NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];

    NSDictionary *configuration;
    @synchronized (self.configurations) {
        configuration = [self.configurations objectForKey:accountType];
    }

    NSURL *redirectURL = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationRedirectURL];
    NSURL *preparedURL = [client authorizationURLWithRedirectURL:redirectURL];

    aPreparedAuthorizationURLHandler(preparedURL);
}

- (void)requestAccessToAccountWithType:(NSString *)accountType username:(NSString *)username password:(NSString *)password;
{
    NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];
    [client authenticateWithUsername:username password:password];
}

- (void)requestAccessToAccountWithType:(NSString *)accountType assertionType:(NSURL *)assertionType assertion:(NSString *)assertion;
{
    NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];
    [client authenticateWithAssertionType:assertionType assertion:assertion];
}

- (void)requestClientCredentialsAccessWithType:(NSString *)accountType;
{
    NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];
    [client authenticateWithClientCredentials];
}

- (void)removeAccount:(NXOAuth2Account *)account;
{
    if (account) {
        @synchronized (self.accountsDict) {
            [self.accountsDict removeObjectForKey:account.identifier];
            [NXOAuth2AccountStore storeAccountsInDefaultKeychain:self.accountsDict];
        }
        [[NSNotificationCenter defaultCenter] postNotificationName:NXOAuth2AccountStoreAccountsDidChangeNotification object:self];
    }
}

#pragma mark Configuration

- (void)setClientID:(NSString *)aClientID
             secret:(NSString *)aSecret
   authorizationURL:(NSURL *)anAuthorizationURL
           tokenURL:(NSURL *)aTokenURL
        redirectURL:(NSURL *)aRedirectURL
     forAccountType:(NSString *)anAccountType;
{
    [self setConfiguration:[NSDictionary dictionaryWithObjectsAndKeys:
                            aClientID, kNXOAuth2AccountStoreConfigurationClientID,
                            aSecret, kNXOAuth2AccountStoreConfigurationSecret,
                            anAuthorizationURL, kNXOAuth2AccountStoreConfigurationAuthorizeURL,
                            aTokenURL, kNXOAuth2AccountStoreConfigurationTokenURL,
                            aRedirectURL, kNXOAuth2AccountStoreConfigurationRedirectURL, nil]
            forAccountType:anAccountType];
}

- (void)setClientID:(NSString *)aClientID
             secret:(NSString *)aSecret
              scope:(NSSet *)theScope
   authorizationURL:(NSURL *)anAuthorizationURL
           tokenURL:(NSURL *)aTokenURL
        redirectURL:(NSURL *)aRedirectURL
      keyChainGroup:(NSString *)aKeyChainGroup
     forAccountType:(NSString *)anAccountType;
{
    [self setConfiguration:[NSDictionary dictionaryWithObjectsAndKeys:
                            aClientID, kNXOAuth2AccountStoreConfigurationClientID,
                            aSecret, kNXOAuth2AccountStoreConfigurationSecret,
                            theScope, kNXOAuth2AccountStoreConfigurationScope,
                            anAuthorizationURL, kNXOAuth2AccountStoreConfigurationAuthorizeURL,
                            aTokenURL, kNXOAuth2AccountStoreConfigurationTokenURL,
                            aKeyChainGroup, kNXOAuth2AccountStoreConfigurationKeyChainGroup,
                            aRedirectURL, kNXOAuth2AccountStoreConfigurationRedirectURL, nil]
            forAccountType:anAccountType];
}

- (void)setClientID:(NSString *)aClientID
             secret:(NSString *)aSecret
              scope:(NSSet *)theScope
   authorizationURL:(NSURL *)anAuthorizationURL
           tokenURL:(NSURL *)aTokenURL
        redirectURL:(NSURL *)aRedirectURL
      keyChainGroup:(NSString *)aKeyChainGroup
          tokenType:(NSString *)aTokenType
     forAccountType:(NSString *)anAccountType;
{
    [self setConfiguration:[NSDictionary dictionaryWithObjectsAndKeys:
                            aClientID, kNXOAuth2AccountStoreConfigurationClientID,
                            aSecret, kNXOAuth2AccountStoreConfigurationSecret,
                            theScope, kNXOAuth2AccountStoreConfigurationScope,
                            anAuthorizationURL, kNXOAuth2AccountStoreConfigurationAuthorizeURL,
                            aTokenURL, kNXOAuth2AccountStoreConfigurationTokenURL,
                            aTokenType, kNXOAuth2AccountStoreConfigurationTokenType,
                            aKeyChainGroup, kNXOAuth2AccountStoreConfigurationKeyChainGroup,
                            aRedirectURL, kNXOAuth2AccountStoreConfigurationRedirectURL, nil]
            forAccountType:anAccountType];
}

- (void)setConfiguration:(NSDictionary *)configuration
          forAccountType:(NSString *)accountType;
{
    NSAssert1([configuration objectForKey:kNXOAuth2AccountStoreConfigurationClientID], @"Missing OAuth2 client ID for account type '%@'.", accountType);
    NSAssert1([configuration objectForKey:kNXOAuth2AccountStoreConfigurationSecret], @"Missing OAuth2 client secret for account type '%@'.", accountType);
    NSAssert1([configuration objectForKey:kNXOAuth2AccountStoreConfigurationAuthorizeURL], @"Missing OAuth2 authorize URL for account type '%@'.", accountType);
    NSAssert1([configuration objectForKey:kNXOAuth2AccountStoreConfigurationTokenURL], @"Missing OAuth2 token URL for account type '%@'.", accountType);

    @synchronized (self.configurations) {
        [self.configurations setObject:configuration forKey:accountType];
    }
}

- (NSDictionary *)configurationForAccountType:(NSString *)accountType;
{
    NSDictionary *result = nil;
    @synchronized (self.configurations) {
        result = [self.configurations objectForKey:accountType];
    }
    return result;
}

#pragma mark Trust Mode Handler

- (void)setTrustModeHandlerForAccountType:(NSString *)accountType
                                    block:(NXOAuth2TrustModeHandler)handler;
{
    @synchronized (self.trustModeHandler) {
        [self.trustModeHandler setObject:[handler copy] forKey:accountType];
    }
}

- (void)setTrustedCertificatesHandlerForAccountType:(NSString *)accountType
                                              block:(NXOAuth2TrustedCertificatesHandler)handler;
{
    @synchronized (self.trustedCertificatesHandler) {
        [self.trustedCertificatesHandler setObject:[handler copy] forKey:accountType];
    }
}

- (NXOAuth2TrustModeHandler)trustModeHandlerForAccountType:(NSString *)accountType;
{
    return [self.trustModeHandler objectForKey:accountType];
}

- (NXOAuth2TrustedCertificatesHandler)trustedCertificatesHandlerForAccountType:(NSString *)accountType;
{
    NXOAuth2TrustedCertificatesHandler handler = [self.trustedCertificatesHandler objectForKey:accountType];
    NSAssert(handler, @"You need to provied a NXOAuth2TrustedCertificatesHandler for account type '%@' because you are using 'NXOAuth2TrustModeSpecificCertificate' as trust mode for that account type.", accountType);
    return handler;
}

#pragma mark Handle OAuth Redirects

- (BOOL)handleRedirectURL:(NSURL *)aURL;
{
    __block NSURL *fixedRedirectURL = nil;
    NSSet *accountTypes;

    @synchronized (self.configurations) {
        accountTypes = [self.configurations keysOfEntriesPassingTest:^(id key, id obj, BOOL *stop) {
            NSDictionary *configuration = obj;
            NSURL *redirectURL = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationRedirectURL];
            if ( [[[aURL absoluteString] lowercaseString] hasPrefix:[[redirectURL absoluteString] lowercaseString]]) {

                // WORKAROUND: The URL which is passed to this method may be lower case also the scheme is registered in camel case. Therefor replace the prefix with the stored redirectURL.
                if (fixedRedirectURL == nil) {
                    if ([aURL.scheme isEqualToString:redirectURL.scheme]) {
                        fixedRedirectURL = aURL;
                    } else {
                        NSRange prefixRange;
                        prefixRange.location = 0;
                        prefixRange.length = [redirectURL.absoluteString length];
                        fixedRedirectURL = [NSURL URLWithString:[aURL.absoluteString stringByReplacingCharactersInRange:prefixRange
                                                                                withString:redirectURL.absoluteString]];
                    }
                }

                return YES;
            } else {
                return NO;
            }
        }];
    }

    for (NSString *accountType in accountTypes) {
        NXOAuth2Client *client = [self pendingOAuthClientForAccountType:accountType];
        if ([client openRedirectURL:fixedRedirectURL]) {
            return YES;
        }
    }
    return NO;
}

#pragma mark OAuthClient to AccountType Relation

- (NXOAuth2Client *)pendingOAuthClientForAccountType:(NSString *)accountType;
{
    NXOAuth2Client *client = nil;
    @synchronized (self.pendingOAuthClients) {
        client = [self.pendingOAuthClients objectForKey:accountType];

        if (!client) {
            NSDictionary *configuration;
            @synchronized (self.configurations) {
                configuration = [self.configurations objectForKey:accountType];
            }

            NSString *clientID = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationClientID];
            NSString *clientSecret = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationSecret];
            NSSet *scope = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationScope];
            NSURL *authorizeURL = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationAuthorizeURL];
            NSURL *tokenURL = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationTokenURL];
            NSString *tokenType = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationTokenType];
            NSString *tokenRequestHTTPMethod = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationTokenRequestHTTPMethod];
            NSString *keychainGroup = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationKeyChainGroup];
            NSDictionary *additionalAuthenticationParameters = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationAdditionalAuthenticationParameters];

            client = [[NXOAuth2Client alloc] initWithClientID:clientID
                                                 clientSecret:clientSecret
                                                 authorizeURL:authorizeURL
                                                     tokenURL:tokenURL
                                                  accessToken:nil
                                                    tokenType:tokenType
                                                keyChainGroup:keychainGroup
                                                   persistent:YES
                                                     delegate:self];

            client.persistent = NO;

            if (tokenRequestHTTPMethod != nil) {
                client.tokenRequestHTTPMethod = tokenRequestHTTPMethod;
            }
            if (additionalAuthenticationParameters != nil) {
                NSAssert([additionalAuthenticationParameters isKindOfClass:[NSDictionary class]], @"additionalAuthenticationParameters have to be a NSDictionary");
                client.additionalAuthenticationParameters = additionalAuthenticationParameters;
            }

            if (scope != nil) {
                client.desiredScope = scope;
            }

            [self.pendingOAuthClients setObject:client forKey:accountType];
        }
    }
    return client;
}

- (NSString *)accountTypeOfPendingOAuthClient:(NXOAuth2Client *)oauthClient;
{
    NSString *result = nil;
    @synchronized (self.pendingOAuthClients) {
        NSSet *accountTypes = [self.pendingOAuthClients keysOfEntriesPassingTest:^(id key, id obj, BOOL *stop){
            if ([obj isEqual:oauthClient]) {
                *stop = YES;
                return YES;
            }
            return NO;
        }];
        result = [accountTypes anyObject];
    }
    return result;
}

#pragma mark NXOAuth2ClientDelegate

- (void)oauthClientNeedsAuthentication:(NXOAuth2Client *)client;
{
    NSString *accountType = [self accountTypeOfPendingOAuthClient:client];

    NSDictionary *configuration;
    @synchronized (self.configurations) {
        configuration = [self.configurations objectForKey:accountType];
    }

    NSURL *redirectURL = [configuration objectForKey:kNXOAuth2AccountStoreConfigurationRedirectURL];
    NSURL *preparedURL = [client authorizationURLWithRedirectURL:redirectURL];

#if TARGET_OS_IPHONE
        [[UIApplication sharedApplication] openURL:preparedURL];
#else
        [[NSWorkspace sharedWorkspace] openURL:preparedURL];
#endif
}

- (void)oauthClientDidGetAccessToken:(NXOAuth2Client *)client;
{
    NSString *accountType;
    @synchronized (self.pendingOAuthClients) {
        accountType = [self accountTypeOfPendingOAuthClient:client];
        [self.pendingOAuthClients removeObjectForKey:accountType];
    }

    NXOAuth2Account *account = [[NXOAuth2Account alloc] initAccountWithOAuthClient:client accountType:accountType];

    [self addAccount:account];
}

- (void)addAccount:(NXOAuth2Account *)account;
{
    @synchronized (self.accountsDict) {
        [self.accountsDict setValue:account forKey:account.identifier];
        [NXOAuth2AccountStore storeAccountsInDefaultKeychain:self.accountsDict];
    }

    NSDictionary *userInfo = [NSDictionary dictionaryWithObject:account
                                                         forKey:NXOAuth2AccountStoreNewAccountUserInfoKey];

    [[NSNotificationCenter defaultCenter] postNotificationName:NXOAuth2AccountStoreAccountsDidChangeNotification
                                                        object:self
                                                      userInfo:userInfo];
}

- (void)oauthClientDidLoseAccessToken:(NXOAuth2Client *)client;
{
    // This delegate method should never be called because the account store
    // does not act as an delegate for established connections.

    // If there is one case that was overlooked, we will remove the oauth
    // client from the list of pending oauth clients as a precaution.
    NSString *accountType;
    @synchronized (self.pendingOAuthClients) {
        accountType = [self accountTypeOfPendingOAuthClient:client];
        if (accountType) {
            [self.pendingOAuthClients removeObjectForKey:accountType];
        }
    }
}

- (void)oauthClient:(NXOAuth2Client *)client didFailToGetAccessTokenWithError:(NSError *)error;
{
    NSString *accountType;
    @synchronized (self.pendingOAuthClients) {
        accountType = [self accountTypeOfPendingOAuthClient:client];
        [self.pendingOAuthClients removeObjectForKey:accountType];
    }

    NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:
                              accountType, kNXOAuth2AccountStoreAccountType,
                              error, NXOAuth2AccountStoreErrorKey, nil];

    [[NSNotificationCenter defaultCenter] postNotificationName:NXOAuth2AccountStoreDidFailToRequestAccessNotification
                                                        object:self
                                                      userInfo:userInfo];
}

#pragma mark NXOAuth2TrustDelegate

-(NXOAuth2TrustMode)connection:(NXOAuth2Connection *)connection trustModeForHostname:(NSString *)hostname;
{
    NSString *accountType = [self accountTypeOfPendingOAuthClient:connection.client];
    NXOAuth2TrustModeHandler handler = [self trustModeHandlerForAccountType:accountType];
    if (handler) {
        return handler(connection, hostname);
    } else {
        return NXOAuth2TrustModeSystem;
    }
}

-(NSArray *)connection:(NXOAuth2Connection *)connection trustedCertificatesForHostname:(NSString *)hostname;
{
    NSString *accountType = [self accountTypeOfPendingOAuthClient:connection.client];
    NXOAuth2TrustedCertificatesHandler handler = [self trustedCertificatesHandlerForAccountType:accountType];
    return handler(hostname);
}

#pragma mark Notification Handler

- (void)accountDidChangeUserData:(NSNotification *)aNotification;
{
    @synchronized (self.accountsDict) {
        // The user data of an account has been changed.
        // Save all accounts in the default keychain.
        [NXOAuth2AccountStore storeAccountsInDefaultKeychain:self.accountsDict];
    }
}

- (void)accountDidChangeAccessToken:(NSNotification *)aNotification;
{
    @synchronized (self.accountsDict) {
        // An access token of an account has been changed.
        // Save all accounts in the default keychain.
        [NXOAuth2AccountStore storeAccountsInDefaultKeychain:self.accountsDict];
    }
}

- (void)accountDidLoseAccessToken:(NSNotification *)aNotification;
{
    NSLog(@"Removing account with id '%@' from account store because it lost its access token.", [aNotification.object identifier]);
    [self removeAccount:aNotification.object];
}

#pragma mark Keychain Support

+ (NSString *)keychainServiceName;
{
    NSString *appName = [[NSBundle mainBundle] bundleIdentifier];
    return [NSString stringWithFormat:@"%@::NXOAuth2AccountStore", appName];
}

#if TARGET_OS_IPHONE

+ (NSDictionary *)accountsFromDefaultKeychain;
{
    NSString *serviceName = [self keychainServiceName];

    NSDictionary *result = nil;
    NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys:
                           (__bridge NSString *)kSecClassGenericPassword, kSecClass,
                           serviceName, kSecAttrService,
                           kCFBooleanTrue, kSecReturnAttributes,
                           nil];
    CFTypeRef cfResult = nil;
    OSStatus status = SecItemCopyMatching((__bridge CFDictionaryRef)query, &cfResult);
    result = (__bridge_transfer NSDictionary *)cfResult;

    if (status != noErr) {
        NSAssert1(status == errSecItemNotFound, @"Unexpected error while fetching accounts from keychain: %d", (int)status);
        return nil;
    }

    return [NSKeyedUnarchiver unarchiveObjectWithData:[result objectForKey:(__bridge NSString *)kSecAttrGeneric]];
}

+ (void)storeAccountsInDefaultKeychain:(NSDictionary *)accounts;
{
    [self removeFromDefaultKeychain];

    NSString *serviceName = [self keychainServiceName];

    NSData *data = [NSKeyedArchiver archivedDataWithRootObject:accounts];
    NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys:
                           (__bridge NSString *)kSecClassGenericPassword, kSecClass,
                           serviceName, kSecAttrService,
                           @"OAuth 2 Account Store", kSecAttrLabel,
                           data, kSecAttrGeneric,
                           nil];
    OSStatus __attribute__((unused)) err = SecItemAdd((__bridge CFDictionaryRef)query, NULL);
    NSAssert1(err == noErr, @"Error while adding token to keychain: %d", (int)err);
}

+ (void)removeFromDefaultKeychain;
{
    NSString *serviceName = [self keychainServiceName];
    NSDictionary *query = [NSDictionary dictionaryWithObjectsAndKeys:
                           (__bridge NSString *)kSecClassGenericPassword, kSecClass,
                           serviceName, kSecAttrService,
                           nil];
    OSStatus __attribute__((unused)) err = SecItemDelete((__bridge CFDictionaryRef)query);
    NSAssert1((err == noErr || err == errSecItemNotFound), @"Error while deleting token from keychain: ld", (int)err);

}

#else

+ (NSDictionary *)accountsFromDefaultKeychain;
{
    NSString *serviceName = [self keychainServiceName];

    SecKeychainItemRef item = nil;
    OSStatus err = SecKeychainFindGenericPassword(NULL,
                                                  strlen([serviceName UTF8String]),
                                                  [serviceName UTF8String],
                                                  0,
                                                  NULL,
                                                  NULL,
                                                  NULL,
                                                  &item);
    if (err != noErr) {
        NSAssert1(err == errSecItemNotFound, @"Unexpected error while fetching accounts from keychain: %d", err);
        return nil;
    }

    // from Advanced Mac OS X Programming, ch. 16
    UInt32 length;
    char *password;
    NSData *result = nil;
    SecKeychainAttribute attributes[8];
    SecKeychainAttributeList list;

    attributes[0].tag = kSecAccountItemAttr;
    attributes[1].tag = kSecDescriptionItemAttr;
    attributes[2].tag = kSecLabelItemAttr;
    attributes[3].tag = kSecModDateItemAttr;

    list.count = 4;
    list.attr = attributes;

    err = SecKeychainItemCopyContent(item, NULL, &list, &length, (void **)&password);
    if (err == noErr) {
        if (password != NULL) {
            result = [NSData dataWithBytes:password length:length];
        }
        SecKeychainItemFreeContent(&list, password);
    } else {
        // TODO find out why this always works in i386 and always fails on ppc
        NSLog(@"Error from SecKeychainItemCopyContent: %d", err);
        return nil;
    }
    CFRelease(item);
    return [NSKeyedUnarchiver unarchiveObjectWithData:result];
}

+ (void)storeAccountsInDefaultKeychain:(NSDictionary *)accounts;
{
    [self removeFromDefaultKeychain];

    NSString *serviceName = [self keychainServiceName];

    NSData *data = [NSKeyedArchiver archivedDataWithRootObject:accounts];

    OSStatus __attribute__((unused))err = SecKeychainAddGenericPassword(NULL,
                                                                        strlen([serviceName UTF8String]),
                                                                        [serviceName UTF8String],
                                                                        0,
                                                                        NULL,
                                                                        [data length],
                                                                        [data bytes],
                                                                        NULL);

    NSAssert1(err == noErr, @"Error while storing accounts in keychain: %d", err);
}

+ (void)removeFromDefaultKeychain;
{
    NSString *serviceName = [self keychainServiceName];

    SecKeychainItemRef item = nil;
    OSStatus err = SecKeychainFindGenericPassword(NULL,
                                                  strlen([serviceName UTF8String]),
                                                  [serviceName UTF8String],
                                                  0,
                                                  NULL,
                                                  NULL,
                                                  NULL,
                                                  &item);
    NSAssert1((err == noErr || err == errSecItemNotFound), @"Error while deleting accounts from keychain: %d", err);
    if (err == noErr) {
        err = SecKeychainItemDelete(item);
    }
    if (item) {
        CFRelease(item);
    }
    NSAssert1((err == noErr || err == errSecItemNotFound), @"Error while deleting accounts from keychain: %d", err);
}

#endif

@end

redpajama_set_name: RedPajamaGithub


Flashing colors illuminated Main Street's asphalt at the V.I. Carnival Adult Parade rolled through Charlotte Amalie.
Adults pranced in explosions of color and sound and inextinguishable attitude. Personal difficulties in the wake of hurricane recovery were not to be seen in the sparkling eyes of butterflies and feathered dancers among the 38 troupes who thrilled a crowd of onlookers under shade umbrellas, on balconies and many willing to brave the searing sunshine.
Esonica Veira, Miss Universe contestant from the US Virgin Islands was a showstopper.
"We saw her on TV in the states and she is even more charming in person," said Richard Leeman, who was visiting from Portland, Maine.
Esonica was gracious as she conversed warmly with the Leemans. When not attending to her Miss Universe duties, she devotes her time to promoting female self-esteem and getting hurricane relief supplies shipped to the territory.
The troupes braved the hot weather and ultra-bright sunlight, giving off a positive attitude and what seemed to be a sincere desire to show St. Thomas's spirit at its best. Free water was offered on every corner, many of the bottles wrapped with the names of gubernatorial candidates. Orange swag from Viya was everywhere – on flying discs, cups, towels and sunglasses. Vendors in pop-up stands did a big business in local foods and rum-based concoctions.
Police officers said they were generally pleased by the crowd's behavior. While none would comment on the record, they gave off pleasant smiles when the topic was brought up.
Many road closings brought out the creativity of some drivers and parkers.
Folks trying to get up the Maude Proudfoot road were sent back and headed over Raphune Hill only to be stuck in heavy traffic due to an overturned car.
That's why after our troupe cross the stage, we eat & went to the Village and then the waterfront. Waste of time…no fireworks.
Does anyone at the Source care about the basics of journalism — getting the facts correct? The first line of this article is blatantly inaccurate. You guys should be embarrassed.


This fantastic diagram from the guys over at the Wikibon blog should really help ITGS students understand different aspects of information technology security in the data centre.
As you can see, the diagram shows how physical measures such as guards and locks, technological measures such as biometric authentication and firewalls, and social aspects such as user education and acceptable use policies, are all needed to secure an organisation and its data. All areas of the ITGS triangle covered – perfect!
I think this could be very useful in a lesson to discuss the types of threat an organisation faces (natural disasters, malware, insider data leaks) and how they can be addressed.


Christmas cards have been around since the 1840s. They've had their ups and downs and, like all things Christmas, have often gotten caught up in the commercialization of Christmas. But in an age where digital correspondence is the norm and personal letters are rare, a hand-written note can still bring joy and pleasure to someone's holiday season.
Who Should Get a Card?
Christmas cards are, first and foremost, for family and friends. Even if you aren't "the Christmas card kind," consider sending cards to the people you care about most.
Extended family, neighbors, acquaintances, co-workers, and business associates may also make your list. Take care not to send a holiday greeting that won't be appreciated—whether by a member of a different faith or someone with whom you aren't very close.
Christmas cards are, for many people, the minimum communication between friends or family who want to stay in touch. Send a card to any contact you don't want to lose.
It's a good idea to return a Christmas card to everyone who sent you one the year before. Be sure to add any unexpected surprises early in the season to your list.
There is no formal requirement, but Adam and I only send Christmas cards to people we'd like to write a personal note. An impersonal card is likely to end up in the wastebasket, but a lovely greeting could make someone's day.
What Goes in the Card?
There aren't any rules what the card itself should look like. Many senders buy cards en masse from a stationary shop, and increasing numbers of families buy photo cards on-line. This year, we're putting together our own cards with scrapbooking remnants, stamps, and our family Christmas photo.
Be sensitive about the message on the card. If many of your recipients don't celebrate Christmas, "Season's greetings," or "Happy holidays," may be more appropriate.
Again, a personal note isn't a formal requirement. But while you're taking the time and effort to mail cards, why not drop in a few quick sentiments for a happy new year?
Some families include a newsletter with tidbits from the past year. Generally, these newsletters should be no longer than a piece of 8.5×11" or A4 paper. Include them only in cards to family and close friends. And, while you can share good news, make sure you don't use your newsletter to brag about your money or accomplishments.
What Goes on the Envelope?
Be sure to write your return address in the upper, left-hand corner or the back flap of the envelope. That way, card recipients can easily return the gesture.
Use Mr. for married and unmarried men over 13.
Use Ms. for unmarried women over 18 and women you don't know very well.
Use Miss for unmarried women under 18 or, in more old-fashioned circles, under 30.
Use Master for boys under 13.
Use Mr. (first name) and Mrs. (first name) (surname) for most couples.
Use the (surname) Family for most families of three or more.
Use the Reverend (first name) (surname) for Catholic most priests and Protestant clergy.
For more information, visit the Emily Post Institute's site about forms of address.
You can mail Christmas cards as early as Black Friday. Most people wait until the first or second week of December.
The United States Postal Service recommends mailing cards 20 days before Christmas to ensure receipt by Christmas day.
Ecards are an acceptable alternative to paper cards for recipients who regularly use the internet.
Even though eCards are greener, less costly, and less time consuming, the joy of sending someone a thoughtful, personal holiday greeting is well worth the price.
How about you? Do you still send out Christmas cards?


In August, Abu Umar al-Shishani ("Abu Umar the Chechen") surged to prominence in the Syrian conflict. The faction which he led, Jaish al-Muhajirin wa Ansar (Army of Emigrants and Helpers) had played a key role in one of the insurgency's biggest victories of 2013, the capture of Menagh Airbase in Aleppo Province.
Over the next three months, EA's Joanna Paraszczuk investigated the story of al-Shishani and the foreign fighters, most of them ethnic Chechens, of Jaish al-Muhajirin wa Ansar. She detailed the evolution of the group, assessed its significance in the insurgency, and examined its relationship with the Islamic State of Iraq and as-Sham. She brought testimony from al-Shishani himself, in videos commenting on battles near Hama, on ISIS — which had reportedly named him "Northern Emir" for Syria — and on battles with Kurdish militia this autumn.
Doing so, she put into perspective the overblown claims of media and some analysts that the "foreign jihadists" of Jaish had "spearheaded the capture" of Menagh and become a leading force in the insurgency. Her story of Abu Umar also gave much-needed context for a media shorthand that was reducing factions in northern Syria to "Al Qa'eda-linked" without considering their backgrounds, operations, and motives.
Now we have additional information for Paraszczuk's analysis, courtesy of two detailed and sometimes curious stories, from Alan Cullison of The Wall Street Journal, and from Murad Batal Shishani of BBC Arabic, about the "real" Abu Umar.
Both Batal Shishani and Cullison have published stories based heavily on information from anonymous sources, and a middleman who gave information from Georgia's Defense Ministry.
Cullison, who interviewed people claiming to be Umar /Tarkhan's relatives and two of his (anonymous) former army commanders, says that he grew up as a shepherd boy in Georgia's Pankisi Gorge, "living in a brick hut with no plumbing in the village of Birkiani". His long-standing campaign against Moscow began as he helped Chechen rebels cross secretly into Russia and sometimes joined the fighters on missions against Russian-backed troops.
After leaving high school, Umar /Tarkhan joined the Georgian army, winning plaudits for his handling of weapons and maps and joining a special reconnaissance group. He was eventually promoted to sergeant in a new intelligence unit, spying on Russian tank columns during Georgia's 2008 five-day war with Moscow.
In 2010, Umar /Tarkhan's life changed when he was diagnosed with tuberculosis and confined to a military hospital for several months. He was deemed unfit for the military and discharged.
Islamist fighters inside Russia, he was sentenced to three years in prison in September 2010. When he was released after 16 months, he left Georgia.
Umar /Tarkhan's father says his son left for Istanbul, where an older brother had gone months earlier, because he had "no job, no prospects". While his father says Umar /Tarkhan intended to join an Islamist force fighting inside Syria, he disappeared until this spring when he emerged in promotional videos for Jaish al-Muhajirin wal Ansar.
In Batal Shishani's version for BBC Arabic — published some days before Cullison's, on November 13 — we learn that BBC Arabic "spoke with a Chechen who served with him (in the Georgian Army), who said he was "a young man sober, sane, considered such by all who knew him, nothing in his character that demonstrated anything extreme or something like that".
The BBC Arabic version says that it managed to access a file from Abu Umar's military service, from the Georgian Defense Ministry, via a middleman who asked not to be identified.
The military file revealed that Tarkhan Batirashvili was born in 1968 in the village of Barkiyana in the Pankisi Gorge. He served his compulsory military service between 2006 and 2007. After he finished his service in the disputed region of Abkhazia between Russia and Georgia, in early 2008 he signed a contract to join the Georgian army in a sniper battalion.
The file seen by BBC Arabic says that Tarkhan fought in battles with the Georgian Army against Russia during the five-day war in 2008, and was promoted to the rank of sergeant because of his performance, but he was never rewarded. Instead, because of a health conditions — he contracted tuberculosis in 2010 — he was discharged from service in June that same year.
In September 2010 Tarkhan was imprisoned on charges of buying and storing weapons. He was sentenced to three years, but was released to his deteriorating health, before the end of his sentence.
Some who knew him said that he then traveled to Turkey, and from there to Syria, which had begun experiencing armed conflict. Assisted by his military experience, he gained a leadership position with armed groups in Syria.
It is an engaging story, but what is its significance for an understanding of the insurgency in the Syrian conflict? Both articles offer more questions than answers.
Did Umar /Batirashvili Become a "Global Islamic Jihadist"?
The common narrative of Islamist groups in Syria, and the foreign fighters in them, is that they are pursuing a sectarian campaign for a global Islamist ideology. That often turns into the phrase "Al Qa'eda-linked".
Cullison's account offers little of this for Umar /Batirashvili. There are only two sentences.
Cullison does not give a link to the website, so there is no way to establish if Umar /Batirashvili offered more insight into a religious motivation.
Mr. Batirashvili's father…doubts his son's beard was grown out of any religious conviction.
"He just switched armies, and now he's wearing a different hat," he said.
How Did Umar /Batirashvili Rise So Quickly to Lead Jaish al-Muhajirin wa Ansar?
In Cullison's story, Umar /Batirashvili goes to Turkey in 2012 with military experience and some evidence of support for Islamist insurgents in Russia, but no previous involvement, let alone leadership, with factions fighting in Syria.
Within a year, however, Umar /Batirashvili moves from recruit to head of Jaish al-Muhajirin wa Ansar, formed in March 2013 from the merger of three Islamist factions — Kataeb al-Muhajireen, Kataeb Khattab, and Jaish Muhammad.
There is no explanation in the article of Umar /Batirashvili's meteoric rise to become, in Cullison's words, an "unruly mastermind" of an insurgent force.
What is Jaish al-Muhajirin wa Ansar's Relationship with the Islamic State of Iraq?
The jihadi commander has recently emerged from obscurity to be the northern commander in Syria of the Islamic State of Iraq and the Sham (ISIS), an al Qaeda-connected coalition whose thousands of Arab and foreign fighters have overrun key Syrian military bases, staged public executions and muscled aside American-backed moderate rebel groups trying to topple President Bashar al-Assad.
However, the article has no information on the link between Jaish al-Mujahirin wa Ansar and ISIS, other than the nominal designation of Umar /Batarashvili as an "Emir of the Northern Front" for ISIS during a major offensive by insurgents in Latakia Province in August.
And there is nothing in the piece to link Jaish with Al Qa'eda beyond the generic guilt-by-association reference to Umar /Batarashvili as an ISIS Emir.
Perhaps ironically, given its dramatic opening of Jaish's involvement in the capture of the Menagh airbase in August, the Wall Street Journal account undermines the portrayal of a well-organized "foreign jihadist" effort which has systematically taken over the insurgency.
Instead, Umar/Batarashvili's story — and thus the story of Jaish — is one of circumstances and opportunities in which a motley collection of fighters, mainly from outside Syria, gathered. Some may have a sense of "global jihad", others may have a vague ideological commitment, others may just have a general wish to be involved in a battle.
Umar/Batarashvili, who often struggles to put together a sentence, does not offer a coherent vision of jihad beyond the fight as a fight — against President Assad's forces, against the Kurds, possibly against other insurgents.
This does not diminish Jaish as a force, at Menagh and elsewhere. Its use of suicide bombers, its ruthlessness — noted and condemned in a Human Rights Watch report on the Latakia offensive — and its determination have made it an asset for insurgent campaigns.
However, it is only one of a large number of such forces in a patchwork insurgency in a fragmented conflict. Jaish are not the cohesive "foreign jihadist" front dominating an insurgency on behalf of Al Qa'eda.
And Abu Umar/Batarashvili — ex-shepherd boy, veteran of the Georgian military, former prisoner — is just a man who "switched armies" to fight another fight.


text:
Race and the Law Prof Blog
Remembering the Real American Patriots – Black Women
By Nareissa L. Smith
Untitled painting of a black woman sewing an American flag, by O, Vereisky, 1964
I have never liked the Fourth of July. As a child, sparklers and fireworks terrified me. As I grew older, the more I learned more about America's complicated history with people that look like me, the less likely I became to wave Old Glory.
But this year, I had a realization.
The problem with Fourth of July is not patriotism, but rather that patriotism has been too narrowly defined. For far too many Americans, patriotism means unquestioning, automatic praise of America. Criticizing America's past or present is tantamount to treason. But this need not be the case. The Oxford English Dictionary says that a patriot is one "who vigorously supports their country and is prepared to defend it against enemies or detractors."
When most think of America's enemies, they think of those from foreign lands that would harm Americans. But we must beware of all enemies, whether foreign or domestic. A man who advocates a freedom of religion that applies to some, but not all, has surely harmed Americans and done violence to the First Amendment. A man who has shown nothing but contempt for our cherished freedom of the press is surely no friend to the nation or its constitution. A man who delights in his refusal to vigorously protect our redwood forests, Gulf stream waters, and beautiful, spacious skies surely cannot love America. A man who advocates sentencing millions of Americans to ill health – and perhaps even death - by denying them health care is no friend to those Americans.
If you truly love something, you want to protect everyone and everything in it. A person who is actively working to harm Americans and American institutions can only be considered an enemy to America.
No one has done more to defend this nation against its greatest domestic enemy in recent memory, Donald Trump, than Black women.
Please do not misunderstand. Black women are not the only patriots in America right now. There are Black men, white women, Latinos, Arabs, Asians, and many others who are standing against Trump. However, as a group, Black women have been the most vigorous in their opposition and need to be recognized for this loyalty to their country.
Black women did everything possible to stop Trump from taking office. A staggering ninety-four percent of Black women voted for Hillary Clinton. By contrast, sixty-two percent of white men voted for a man who ran a horribly racist campaign and promised to violate the Constitutional rights of their fellow citizens.
Source: cnn.com
One could argue that some GOP voters mistakenly believed that Trump was simply making brash campaign promises. But now, almost six months in, we can clearly see the damage Trump is doing at home and abroad. Despite this knowledge, post election, 58 percent of white men continue to support him. Meanwhile, just 14 percent of Black women approved, the lowest of any group in the survey.
Source: nbc.com/NBC news
Really, which group loves Americans more?
It's ironic that Trump supporters claim to love America, but praise a man actively working to harm large groups of Americans. It seems, then, that Trump voters only love parts of America. But Black women have shown a more expansive love. We love America even though, after enduring centuries of both racism of sexism, we likely have more reason to hate America than any other group. We endured the same chattel slavery, Klan violence, and Jim Crow segregation as Black men while suffering the same gender indignities as white women. Yet, we continue to do what is best for America. Like Sojourner Truth, Harriet Tubman, Rosa Parks, and many less famous women, we show America her flaws and even help her to fix them. We continue to lift her up, push her forward, and help her be a better version of herself even when we are rebuked at every turn.
If that isn't patriotism, I don't know what is.
If all Americans adopted the expansive vision of patriotism adopted by Black women and their allies, we would have a government that cared for children, women, the poor, the elderly, the LGBT community, Muslims, Jews, atheists, and all other non-male, non-straight, non-WASP segments of our nation instead of a government devoted to inventing new ways to exclude and dismiss their fellow Americans.
In short, the view of patriotism adopted by Black women would move us ever closer to achieving the goal of a nation with liberty and justice for all.
Next year, I think I'll buy a pack of sparklers.
https://lawprofessors.typepad.com/racelawprof/2017/07/remembering-the-real-american-patriots-black-women-.html
Bravo - well done!
Posted by: S. Hawkins | Jul 17, 2017 11:24:08 AM
This blog is an Amazon affiliate. Help support Race and the Law Prof Blog by making purchases through Amazon links on this site at no cost to you.
Alan on Christian Legislative Prayers and Christian Nationalism: Guest Post by Caroline Mala Corbin
Rachel Van Cleave on 2400 Law Professors Sign Letter Opposing Kavanaugh
Susan Feathers on Coexistence in Jordan (Syrian Refugees Blog Series Day 4)
S. Hawkins on Remembering the Real American Patriots – Black Women
Thelma Clardy on Stop Blaming "Fatherlessness" for Destroying the Black Community
Expansion of the Immigration Caging Machine
'Whosoever Sees an Evil' - Muslim Americans' Human Rights Advocacy
Kamala Harris and the Complexity of Racial Identity Politics
Michael Vick, Robert Byrd, and the Case for Redemption
Identity Politics is Failing Women in Legal Academia
Please Select \ Books \ Current Affairs \ Food and Drink \ Games \ Religion \ Travel \ Weblogs The Archives
PageViews Since March 12, 2015
Nadia B. Ahmad
Sahar F. Aziz
Professor of Law and
Chancellor's Social Justice Scholar
Atiba R. Ellis
Assistant Professor of Law
Vinay Harpalani
Associate Professor of Law,
Savannah Law School
Visiting Professor of Law,
Drake University School of Law
Nareissa Smith
Lawyer and Activist
SpearIt
TSU Professor of Law
Frank Wu
Distinguished Professor of Law
UC Hastings


text:
Chitembwe urges team to remain focused
Soccer24 on 7 Oct, 2018
CAPS United coach Lloyd Chitimbwe is pleased with his charges advancing to the semifinals of the Chibuku Super Cup but believes they need to remain focused.
The Green Machine beat Chapungu 3-4 on penalties after the game played at Ascot Stadium on Saturday had ended goalless at full-time.
Speaking after the game, Chitembwe said: "I am happy that we got a positive result. We are going into the next stage, and we cannot say we are going to be the eventual winners until we play the last game. We have to remain focused until the next game."
However, the gaffer rued the chances missed through out the encounter. Abasirim Chidiebere and Wisdom Mutasa failed to score from promising positions on several occasions while Valentine Musarurwa missed a sitter in the second half which could have contributed to the outcome of the tie.
PreviousKadewere suffers fresh injury
NextPreview: Chibuku Super Cup – Quarterfinals
©2017 Soccer24. All rights Reserved.
Except where otherwise noted, content on and from this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.


Since March, 13 2015 Hasselt University has a subscription to a few relevant JSTOR collections. JSTOR is an online archive of scientific journals in various disciplines. In agreement with the editors JSTOR digitizes articles from the first volume onwards, but the last volumes are not accessible.
The journals from these JSTOR collections are not only searchable on the JSTOR-website, they are also available in our A-to-Z list of e-journals. Searching the full text of these magazines is possible via the central search interface (known as the UHasselt Discovery Service).


text:
Pennantia baylisiana es una especie de planta angiosperma de la familia Pennantiaceae. Es endémica de las islas Tres Reyes, Nueva Zelanda. El Libro Guinness de los Récords la ha denominado como la planta más rara de la tierra. Únicamente se conoce un ejemplar, considerado como hembra, el cual ha producido polen viable.

Descripción
Es una planta de tamaño pequeño, con múltiples troncos, con hojas rizadas y brillantes que pueden alcanzar los 120 a 160 mm de largo, siendo más anchas hacia las puntas.

Sus flores, que comienzan a aparecer en los meses de octubre y noviembre, son de color verde y blanco y se encuentran en racimos a lo largo de las ramas. Por último, esta especie da frutos entre los meses de enero y abril; estos son morados, contienen una sola semilla cada uno y alcanzan los 10 mm de largo.

Amenazas
En su hábitat natural, se puede encontrar únicamente una sola planta de este tipo; esto es así porque en un principio, Pennantia Baylisiana y todas las demás plantas endémicas de las islas Tres Reyes fueron devoradas por las cabras del lugar. El peligro fue mitigado en el año 1946 y a partir de entonces, la planta ha persistido a pesar de los daños ocasionados por tormentas y sequías de la zona.

Actualidad
En las últimas décadas, los científicos han tratado de crear más plantas de esta especie pero se interpuso una cuestión: se pensaba que el árbol era hembra y que parecía que necesitaba un macho para generar frutas y semillas de forma adecuada.

Mientras se armaba un plan de recuperación para la especie a principios de la década de 1990, Peter de Lange, científico neozelandés, encontró varios datos que lo ayudaban en su tarea de recuperación. Varios jardineros tenían varias plántulas de Pennantia Baylisiana que resultaron ser ejemplos puros de la especie, no híbridos de otras especies de Pennantia como se había pensado originalmente. También una de las plántulas había producido frutos después de la polinización manual. Esto último, llevó a De Lange a concluir que el árbol silvestre podría no ser verdaderamente hembra. Además, una investigación similar publicada casi en simultáneo, sugirió que si bien la planta era femenina, parecía también tener un nivel bajo de cualidades masculinas que le permitirían auto-polinizarse.

Lamentablemente, durante el plan de rehabilitación de Pennantia, muchas murieron en el lapso del año dado las enfermedades y virus transmitidos por las aves. Sin embargo, De Lange, nunca bajó los brazos, como lo podemos ver: "Aunque esto suena poco prometedor, cuando consideras que las islas son prácticamente inaccesibles y es costoso llegar a ellas, y para hacer este tipo de trabajo necesitas visitar tres o cuatro veces al año, su trabajo es espectacular por decir lo menos", dijo Lange.

Actualmente, gracias al arduo trabajo científico, las semillas de Pennantia fueron regresadas a su tierra natal, desprovistas de enfermedades o patógenos fúngicos; se calculaba que tomaría entre seis y diez años para crecer lo suficiente como para empezar a florecer.

Referencias

Enlaces externos

Pennantiaceae
Ejemplares que son el último de su especie


Spring arrived early here in the Pacific Northwest — even though it's only the end of February, flowers are blooming and the sun is shining. Even if you're still snowed in and fighting frigid temperatures, bring in spring with our new March kids' calendar: Lucky Math Month!
Start prepping your kids now for World Maths Day 2010! It's the biggest math competition in the world, where kids compete and solve math problems from across the globe in "real time." Uniting the world for the sake of math is a powerful idea, so we encourage all of our readers to get ready for World Math Day or, as they call it around most of the globe: World Maths Day! Register your child or classroom on the World Math Day website.
Tune into DreamBox Learning for all the World Math Day highlights as they happen! You can also keep updated by reading the Ambassadors' Official Blog. And please comment below if your child will be joining in on the fun.
On March 14, enjoy a slice of your favorite pie in honor of Pi Day. But first, measure its diameter! On Pi day, tweet your favorite flavor of pie to @DreamBox_Learn.
Top of the morning to you. It wouldn't be lucky math month without St. Patrick's Day! Welcome spring with our Pot of Golden math games and fun activities.
We hope you enjoy the DreamBox March's math activity calendar. Whether you're enjoying unseasonably warm spring temperatures as we are, or still walking through a winter wonderland, you'll have fun kids' math activities on the fridge all month long.