text:
Kyrie Irving, Jayson Tatum Help Celtics to Blowout over Victor Oladipo, Pacers
Adam Wells@adamwells1985Twitter LogoFeatured ColumnistJanuary 10, 2019
Steve Babineau/Getty Images
In a showdown between two of the Eastern Conference's best teams, the Boston Celtics had no problem holding serve on their home court with a 135-108 victory over the Indiana Pacers on Wednesday.
TD Garden has been kind to the Celtics this season. They won all four games on this homestand and are 15-5 in Boston.
Marcus Morris and Jaylen Brown led the scoring barrage for Boston with 22 points each. Jayson Tatum had his first 20-point game since Christmas Day. Kyrie Irving had a quietly efficient night with 12 points on nine field-goal attempts.
Victor Oladipo ended up with 17 points and three rebounds but didn't have an assist for the first time this season.
Surging Celtics Ready to Take Over Eastern Conference
The Celtics' slow start this season left the door open for top contenders like the Milwaukee Bucks and Toronto Raptors to surge to the top of the Eastern Conference.
Those teams were happy to take advantage, with the Raptors owning the NBA's best record (31-12) and the Bucks one game behind them (28-11) entering Wednesday. Even the Pacers and Philadelphia 76ers are still ahead of Boston in the standings.
But the Celtics are now rising from the ashes of those early woes to reclaim their spot as the team to beat in the conference. They have now won 15 of their last 20 games since a 10-10 start, and their upcoming schedule sets up nicely to keep that momentum going:
Tim Bontemps @TimBontemps
Dominant victory for the Celtics tonight over the Pacers. Boston has won seven of nine, and has guys up and down the roster round into form. With 10 of their next 12 games against losing teams, Celtics have a chance to get back on the kind of pace they were expected to from...
Just as important as that record is Boston's health status. Head coach Brad Stevens told reporters prior to Monday's game against the Brooklyn Nets that Aron Baynes could return from a broken finger in the middle of next week.
Gordon Hayward, who finished with 14 points and four assists in 22 minutes against the Pacers, was averaging 15.4 points, 4.8 assists and shot 50.0 percent in the previous five games.
Morris and Marcus Smart have been Boston's unsung heroes this season, especially since the end of November:
Chris Forsberg @ChrisForsberg_
So all the Celtics needed was Marcus Smart in the starting lineup and they became the NBA's most unstoppable offense: Prior to 11/26: 27th, 104.6 offensive rating, 10-10 overall Since 11/26: 1st, 116.6, 14-5 And that was before hanging 68 1st-half points on NBA's No. 2 defense
Brown is finding his rhythm with 15.9 points per game and a 60.0 shooting percentage in seven games since Dec. 27.
Even when things weren't going right for the Celtics, their defense never wavered. They entered Wednesday ranked fourth in defensive efficiency (105.4 points per 100 possessions), per Basketball Reference.
The offense has finally caught up with at least 110 points scored in nine straight games, including putting a hurting on Indiana's usually-stout defense:
Sean Deveney @SeanDeveney
In their last 17 games, the Pacers were allowing 102.7 points per 100 possessions, 3rd in the NBA. Tonight, they've allowed 105 points in an estimated 82 possessions.
All of this is happening for Stevens with 42 games remaining in the regular season. The Celtics beat the third-best team in the Eastern Conference by 27 points on a night when Irving wasn't much of a factor on offense because everyone around him was so good.
Pacers Must Find No. 2 Scoring Option to Maximize Oladipo's Talent
It's easy to excuse a loss like this for the Pacers. They were playing their fourth straight road game and second half of a back-to-back following Tuesday's win over the Cleveland Cavaliers.
But a deeper dive also exposes the biggest thing standing in the way of the Pacers being a very good regular-season team and legitimate title contender: a No. 2 scorer behind Oladipo.
Among teams currently in the Eastern Conference playoffs, Indiana only ranks ahead of the Miami Heat in offensive efficiency, per ESPN.com.
Oladipo leads the team in scoring (20 points per game), but he's not an efficient scorer with 17 attempts per game. His true shooting percentage of 53 is tied for 44th out of 78 qualified shooting guards, per ESPN.com.
The Celtics limited Oladipo to six points in the first half. He finally found a rhythm in the second half after Boston had blown the game wide open.
Domantas Sabonis has been excellent in his second season with the Pacers. The 22-year-old is averaging 14.9 points and a team-leading 9.6 rebounds per game, but his game is limited by playing close to the basket.
Indiana hoped it found shooting help in the offseason with the additions of Tyreke Evans and Doug McDermott.
McDermott has been fine in his role as a catch-and-shoot guy with a 40.9 percent success rate from three-point range, but he only averages 17.6 minutes per game.
Evans has been a massive disappointment, averaging just 10.1 points per game on 37.5 shooting coming into Wednesday's game. He showed both his good and bad sides against the Celtics, with the former coming on a drive to the basket early in the second quarter when the game was still close:
FOX Sports Indiana @FSIndiana
Tyreke Evans weaving in and out of four defenders to get to the basket and tie it! #Pacers Tune in now on FSI and the FOX Sports app: https://t.co/IMmGieWR9H https://t.co/vuU0Iiux6r
On the other end of the spectrum, Sports Illustrated's Chris Mannix noted at the end of the third quarter Evans didn't seem to want to attempt a long three-point attempt:
Chris Mannix @SIChrisMannix
Tyreke Evans with one of the more egregious, "I don't want to mess with my shooting percentage so I'm not taking this shot" end of quarter moments of the season (cc: @WorldWideWob)
If the Pacers want to take full advantage of Oladipo's ball-handling and playmaking skills, they need to find and establish a No. 2 scoring option behind him.
General manager Chad Buchanan has roughly one month until the trade deadline on Feb. 7, but the Pacers operate on a modest budget that could limit their options. Indiana's best hope could be for Evans to shoot 39.9 percent from three-point range like he did last season with the Memphis Grizzlies.
The Pacers will wrap up their five-game road trip Friday against the New York Knicks at Madison Square Garden. The Celtics will begin a three-game road stretch Thursday against the Miami Heat.


text:
Cover Revealed for Dune: The Lady of Caladan
March 4, 2021 2 min read
Tor Books have revealed the final cover for Dune: The Lady of Caladan, the second book in Brian Herbert and...
Preview – Dune: House Atreides Comic #5
Dune: House Atreides resumes, after a one month break, with issue #5 (of 12) on March 24, 2021. The monthly...
Events are escalating quickly on Ix in this sixth issue of Dune: House Atreides, arriving in stores on April 28,...
New Dune Comic Tells Tale of the Sardaukar Legion
BOOM! Studios' line of Dune comics is expanding. Today, the publisher announced Dune: Blood of the Sardaukar #1, a standalone...
Return to Arrakis and attend a traditional Fremen wedding in Dune: House Atreides. Issue #7 (of 12), releasing on May...
A long-awaited child is born into the Bene Gesserit sisterhood in Dune: House Atreides #8, arriving in stores on June...
Preview – Dune: Blood of the Sardaukar Comic
Get inside the mind of one of the Imperium's most formidable fighters in Dune: Blood of the Sardaukar #1. BOOM!...
New Excerpt From Dune: The Lady of Caladan
July 20, 2021 10 min read
Tor Books has posted the first three chapters of Dune: The Lady of Caladan, written by Brian Herbert and Kevin J....
New Dune Comic Special: 'A Whisper of Caladan Seas'
At this year's San Diego [email protected] (July 21-25), BOOM! Studios announced their new comic book Dune: A Whisper of Caladan Seas #1,...
Review – Dune: Blood of the Sardaukar Comic
It's a great time to be a Dune fan! Of course, we have the upcoming movie later this year, but...
Young Leto Atreides faces devastating loss and unsettling revelations, in Dune: House Atreides #9. The next issue of BOOM! Studios'...
'Sands of Dune' Anthology Expands on Events of 'Dune'
September 2, 2021 2 min read
During the Dune Publishing Highlights 2021 panel at San Diego [email protected] (July 24), Tor Books announced a new anthology written...

redpajama_set_name: RedPajamaCommonCrawl


text:
GCB Records GH¢573.67 mln (US$99.5 mln) Profit For 2019, Declared Dividend Payment
Date: August 5, 2020Author: Jeffrey Asiedu 0 Comments
GCB Bank Limited recorded a significant growth in Profit before Tax of GHS573.67 million from GHS450.17 million in 2018, up by 27.4 per cent and paid a dividend of twenty pesewas per share.
The performance was disclosed during the bank's 26th Annual General Meeting (AGM) held virtually for its shareholders to consider and adopt Reports of its Directors, Auditors and Financial Statements for the year ended December 31, 2019.
The virtual AGM was held on Thursday, July 30, 2020 at the GCB Head Office in Accra was in compliance with the Imposition of Restriction Act 2020 (Act 1012), the Registrar General's Department and Securities and Exchange Commission directives and guidance on holding virtual Annual General Meetings.
Sterling performance
Commenting on the performance of the Bank, Board Chairman of GCB Bank, Mr. Jude Arthur attributed GCB's impressive financial performance to its strategic focus of growing the balance sheet and diversifying the bank's income base, underpinned by a robust risk management framework, strengthening of the Internal Audit and combined Assurance functions.
On the payment of dividend, the Board Chairman said even though the Bank of Ghana (BOG) had placed a temporary ban on the payment of dividends due to the potential negative impact of Covid-19 on the liquidity and solvency of banks, GCB was given the permission to pay dividends due to the Bank's impressive financial performance and a case made by the Bank to the Central Bank to outline measures put in place to ensure sustainable growth.
Commenting on the impact of Covid-19 on the Bank's operations, Mr. Arthur said that the Board has developed measures to combat the effects of the pandemic on both the bank and its clients.
He added that measures adopted include staff rotation and working from home, stringent adoption and adherence to Covid-19 principles in the workplace and a framework that prioritises capital expenditure spend taking cognizance of Covid-19.
Customers in sectors that have been hard hit have been provided with concessionary rates and moratorium on principal and interest on loan facilities.
Deployment of e-banking solutions
The Bank has also deployed measures aimed at aggressively growing the its business in identified areas, particularly in the development of electronic banking solutions.
Participation of shareholders
Shareholders participated and voted at the AGM through a purpose-built portal.
The AGM proceedings was transmitted live on GTV and also streamed via https://gcbbankagm.com and across all GCB Bank's social media platforms.
At the end of the meeting, shareholders adopted the 2019 audited financials as presented by Deloitte & Touche for the period and approved all resolutions on the agenda which included the declaration of dividend, re-election of the Board, Directors retiring by rotation, re-election of Directors and the authorization of the Directors to fix the remuneration of Directors.
Departure of GCB MD and Deputy
Prior to officially bringing the AGM to a close, the Board Chairman announced that the Managing Director of the Bank; Anselm Ray Sowah, whose three-year tenure ends this year has opted not to seek a renewal of his contract.
The Deputy Managing Director Operations of the Bank, Mr. Samuel Amankwah, has also reached the mandatory retirement age and will be retired from the Bank.
The Board Chairman and the Shareholders congratulated them for their stellar performance and wished them well.
GCB Bank's Profit before Tax (PBT) increased by 27.4 per cent to GHS573.67 million in 2019 from GHS450.17 million in 2018 driven by solid revenue growth.
Net interest income increased by 20.8 per cent; from GHS967.10million in 2018 to GHS1,168.45 million. Net trading income increased from GHS90.64 in 2018 to GHS141.75 million representing an increase of 57.3 per cent. The Bank also increased net fees and commissions by 22.2 per cent; from GHS197.60 per cent in 2018 to 241.51 million.
GCB Bank increased its total assets from GHS10.72 billion in 2018 to GHS12.52 billion in 2019 representing an increase of 16.8 per cent. Total deposit also increased by 18.4 per cent to GHS9.82 billion from GHS8.30 billion in 2018, making GCB the number one ranked bank in terms of deposit and asset size in the banking industry.
Corporate social responsibility (CSR).
Mr. Arthur stated that GCB Bank invested GHS10.37 million in CSR activities for 2019 as compared to GHS5.62 million spent in 2018 largely in the areas of health, education, environment and sanitation.
He added that CSR has been highlighted in the new BoG guidelines as an activity that should be under the purview of the Board and a new policy framework is being developed to define the Bank's contribution to the communities in which it operates.
On the way forward, the Board Chairman stated that over the past few years GCB has embarked on an aggressive digital strategy aimed at enhancing the frontiers of branchless banking, deepening financial inclusion and putting GCB at the heart of the ongoing mobile money revolution with the launch of key initiatives like the launch of G-Money; an industry first mobile money service.
He emphasized that GCB Bank would continue to position itself to attract the unbanked segment of the market and also deploy its mobile money services to help customers make the transition from the informal to the formal banking sector and provide them with innovative financial products.
GCB is also poised to take advantage of the "new normal" precipitated by Covid-19 to develop and promote a range of digital solutions aimed at delivering value to stakeholders.
credit: Graphic Online
GhanaBankingIndustry
Previous Previous post: Ghana Govt Suspends Fiscal Rules For 2020
Next Next post: Bank of Ghana Commits US$50mln Onto FX market In July


text:
NBA power rankings 2012: Bulls fall to No. 12 after disappointing week
The Chicago Bulls come in at No. 12 on the latest SB Nation NBA Power Rankings; the Memphis Grizzlies hold the top spot.
By Jack Cassidy Nov 19, 2012, 11:41am CST
Share All sharing options for: NBA power rankings 2012: Bulls fall to No. 12 after disappointing week
The Chicago Bulls fell to No. 12 and the Memphis Grizzlies moved into the top spot in this week's SB Nation NBA Power Rankings.
Chicago played four games this past week. They defeated the Phoenix Suns in overtime but lost to everyone else, including the Boston Celtics, Los Angeles Clippers and Portland Trail Blazers. Most alarming in that stretch is the Bulls lack of defense, as they allowed more than 100 points in all four games.
The Bulls may be simply looking to tread water and stay around .500 until Derrick Rose can return midseason and get the team peaking as they head into the playoffs. But a porous defense won't keep the Bulls afloat. Seth Rosenthal, who compiled the power rankings, wrote the following about the Bulls' disappointing past week.
The defense I called "terrifying" last week has fallen off sharply since around the time the Bulls' annual circus trip began, pretty much right after last week's rankings. So, uh, let me just make it clear that I also find cold weather and not having an endless supply of delicious cheeses terrifying.
The Bulls face the Houston Rockets and Milwaukee Bucks this week, both on the road.
The 8-1 Memphis Grizzlies are at the top of the rankings after sweeping their four-game schedule last week, including double-digit wins against the Thunder, Heat and Knicks. They carry an eight-game win streak into their Monday night contest with the Denver Nuggets.
For complete NBA power rankings, click here.


text:
package controller;

import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.JCheckBoxMenuItem;

import view.MainFrame;

public class OverwriteLyricsOptionListener implements ItemListener {

	@Override
	public void itemStateChanged(ItemEvent e) {
		if(((JCheckBoxMenuItem)e.getSource()).isSelected() == true)
			MainFrame.getOptions().setProperty("OverwriteLyrics", "true");
		else
			MainFrame.getOptions().setProperty("OverwriteLyrics", "false");
	}

}

redpajama_set_name: RedPajamaGithub


text:
39 Articles0 Comments
Paul Gilbert is a 23 year old recent graduate student of the University of Rhode Island from which he received a BA double major in history and film studies. Originally from Philadelphia. Paul now lives in Washington D.C. He first found his passion for film in VHS stores when he was younger and has been studying, examining, and analyzing film and the history of film ever since. Paul has a second interest in the world of comics, video games and books. He is an avid connoisseur and frequent attendee at Comic Con and Wizard World events at sites around the country. His interest in those particular genres stem from the ways in which popular culture utilizes a variety of medium to convey stories, ideas, and messages.
Movie Review: Chimes at Midnight
Paul Gilbert January 4, 2016
Like wine, Orson Welles became more respected and rare over time. After his initial foray in Hollywood, he found it increasingly harder to finance his films. Hollywood only beckoned in need of his ser…
The Film Canon: The Seventh Seal (1957)
Paul Gilbert December 15, 2015
A skeptic in a world without skepticism. The knight, Antonius Block, returns home from the Crusades, with his squire Jöns, without a prayer: literally without a prayer. Block cannot find it in himself…
The Film Canon: Dawn of the Dead (1978)
Paul Gilbert December 3, 2015
There's not much in Monroeville, Pennsylvania. It's usually a city that travelers bypass on their way to Pittsburgh. The only distinguishing feature is a large shopping mall. Based on its numerous sto…
The Film Canon: Sweet Smell of Success
Paul Gilbert October 23, 2015
J.J. Hunsecker's eyes watch New York night life like God. In fact, J.J is God for anyone who wants to make it big in show business. A name in his column can make a fledgling comedian into a headliner …
The Film Canon: The Hitch-Hiker (1953)
Paul Gilbert October 6, 2015
AND WE'RE BACK! "Who will be his next victim you?" warns the lobby poster for Ida Lupino's The Hitch-Hiker (1953). A killer is hitchhiking his way across the Southwest and leaving a trail of bod…
SDCC 2015 Journal: Orientation Day
Paul Gilbert July 10, 2015
Five hours in a tin can flying at thirty-five thousand feet in the air will turn any spritely young man into an elderly one with mobility issues. The flight took me from the dreary East Coast to the s…
Out of the Past: 'Mona Lisa' (1986)
Paul Gilbert July 7, 2015
George is the person that tries to make the right decisions, but always make the wrong ones. George has just been released from prison and is looking for a job and trying to reconnect with his daughte…
'A Discovery of Witches' season 2 premiere review: A moody start to Diana and Matthew's journey to the past
Gabrielle Bondi January 9, 2021
'Crownchasers' review: Rebecca Coffindaffer's fast-paced planet-hopping debut explores more than just the galaxy
Isabelle Philip January 7, 2021


Build Kreg Coffee Table with these plans from the Kreg Tool Company.
Kreg Coffee Table Plans Can Be Built by Beginner Woodworker.
You Can Build This Coffee Table!
Yes, you can build this Kreg coffee table with the plan from Kreg Tool Company. The top measures a little more 2' by 4', so will fit in front of either a sofa or love seat. Both the style and the construction consist of simple lines, so it is a great plan for the beginner woodworker.
Although not as simple as the wall shelf plan, this is also a great way for a novice woodworker to get started.
Woodworking Tools Needed to Build This Coffee Table Plan.
(70) 1 1/4 inch coarse Kreg screws.
The Approximate Costs to Build This Kreg Coffee Table are Below.
To build this Kreg plan from a sanded pine plywood, your costs would be approximately $70, not including the cost of your finishing materials.
You may have to buy a full sheet of plywood, but will only use 1/4 of it for this Kreg coffee table.
This plan uses two types of pocket hole joinery: right angle - which is what you use most of the time; and edge joinery - used here to add the finished edge to the coffee table top.
The "Project Notes" and "DIY Tips" are very helpful. We recommend you read the plan through before starting, and then review the Project Notes at every stage of building.
If, at some time in the future, you wanted to change the table top to a solid wood one, it would be very simple to back out the pocket hole screws to detach the base. And then screw the base to a new table top.
If you didn't buy the Kreg DIY Project Kit - this plan is Free with that kit -, the purchase price of $7 for this plan is well worth it, especially if this is one of your first projects.
To go to the website for these Kreg coffee table plans, click here, on the Kreg Tools logo.
Then click on the "Products" tab at the top of the page, and then go to "Education and Apparel." Your last click is on "Product Plans." There you can see all of the plans you can purchase from Kreg Tool Company.


Many issues affect knowledge management. The five most important are big data, cybersecurity, mobility, social analytics, and customer engagement.
The availability of big data has opened many options for understanding everything from customer preferences to medical outcomes.
Amidst all that data, concerns about security have grown, so cybersecurity is taking on new importance. Mobility has become pervasive and affects nearly every element in KM, while social analytics is providing insights at a personal level that were never possible before.
Finally, although those four factors feed into many KM objectives, enhancing customer engagement has taken a place at the top of the priority list for virtually every company and is likely to remain there for some time.
The most dramatic trend impacting knowledge management is harvesting and analyzing big data. An esoteric phenomenon just a few years ago with a new set of technologies and terminology, big data is now wrapped into the strategic plans of many organizations, and not just the big ones.
There are few applications to help with this challenge.
One of them is Hadoop. It can help to integrate complex sets of data to make business decisions and marketing efforts.
Actian Analytics Platform is a big data analytics solution that is accessible and affordable for small businesses, but also scalable to large ones. It can be used to target right customers. It can also be used to generate an economic case for potential buyers.
For example, Yahoo uses Actian to segment millions of users across 10,000 variables, looking for clues that will help predict customer behavior. Amazon uses Actian to provide the core technology components for its cloud-based data warehouse.
The technology can pull together diverse data in near real time as it flows through the data pipeline, marketing, customer engagement, risk assessment and many other applications. At both ends of the spectrum, from startups to large-scale users, big data is the central force in converting large amounts of data to decision-supporting information.
With so much information at large, unauthorized access to it has the potential to be destructive. Knowledge management is focused on information. What makes KM so important is that people can get information and analyze it better. In the past, it was hard to find out who was buying products and how they felt about them. Now an enormous amount of information is available, which has benefits. The information can be stolen and used financial gain.
The cybersecurity market is expected to increase from $95.6 billion in 2014 to $155.7 billion by 2019, resulting in a 10.3% per year increase during that time period. This amount includes network, endpoint, application, content and wireless security as well as many other types of technology. Innovative products are emerging in response to increased threats.
The volume of data, including an entire new collection from the Internet of Things, the challenges of mobile devices, greater use of the cloud for data storage and the broad impact of consumer concern are all sparking the growth.
Cybercrime comes in many forms, from stealing credit card numbers out of a merchant's database to identity theft of consumers. A common strategy is for a cyberthief to obtain some publicly available information about an individual and use it to open an account or figure out a password that provides them access to an account. Users need to be vigilant about changing their passwords and making them strong. Technological safeguards can be put into place, but security depends a great deal on the human effort.
Mobile devices add another element of risk. They are much easier to lose or to steal, and often contain sensitive information such as bank passwords. Technological advances such as the ability to remotely disable a phone will continue to emerge to protect users from the impact of cybertheft. However, the result of users being careless with physical security, such as leaving a laptop in an unlocked car, remains a threat.
Companies can mitigate the impact on their customers by limiting the responsibility of users in the event of fraud or identity theft. Industries are growing up around providing insurance for such scenarios, either to the merchant or the customer.
Although mobility brings hazards, it has brought even more advantages, and it will continue to drive the pervasiveness of knowledge management. Increasingly, knowledge management solutions, including content management, process management and analytics, have mobile versions of the solution. No longer a miniaturized version of the desktop browser, mobile apps are delivering usable KM applications.
Mobility is also forging new paths. For example, Apple Pay allows use of the smartphone as a wallet.
One mistake merchants make in designing mobile apps is to try to duplicate a physical purchase experience on a mobile device. Merchants should not necessarily automate an existing process, but instead should look at the experience holistically. Mobile experiences have to be simpler and as good as, if not better than, the non-mobile experience in order to gain loyalty from the customer.
Barriers remain in the use of mobile devices for enterprise applications, but the barriers also represent opportunities. In a study of U.S. and U.K. information technology decision makers conducted by Vanson Bourne, respondents reported that although more than 400 enterprise applications were typically deployed in each organization, only 22% of them could be easily accessed on mobile devices.
One reason for that is the diversity of enterprise applications. Some are custom, some are SaaS and some are off-the-shelf, and the technology for accessing each one is different. Therefore, development of mobile apps for such applications is needed, but organizations are hampered by the high cost. More efficient development techniques would be a big benefit.
The proliferation of mobile devices has also increased a number of other supporting sectors beside mobile application management (MAM), including mobile content management (MCM) and mobile device management (MDM). Each of them has a touchpoint to knowledge management and should be viewed in conjunction with an overall KM strategy.
Social analytics is a booming market which is expected to triple over the next five years to nearly $9 billion and showing a growth rate of nearly 25% per year. Initially based on simple counts of the number of times a brand was mentioned in social media, analytics has evolved to the point where it is using sophisticated algorithms that support the use of social data for targeted marketing and for initiating customer service.
Social analytics moved from hindsight to insight and now to foresight, with predictive capabilities. SAS social media solutions include integration and storage of social data, general text analytics and analysis of comments for sentiment, and a social conversation module that can work directly or integrate with third-party engagement solutions.
Real-time analysis allows marketing or brand campaigns to be synchronized with the topic threads that are emerging. Decision trees allow 'what-if' scenarios such as the impact of increasing the frequency of an ad, or combining customer segments. These analysis allows users to determine the relationships among various factors and to present visualizations of the relationships for better marketing decisions.
The value of social media analytics is also increased by combining it with data such as purchasing information from the data warehouse, to compare customers' stated intentions with actual behavior. There is tremendous growth in analyzing social media information along with data from the Internet of Things which measures physical activity to build a profile not just of transactions but of tone and behavior along the customer journey.
Social media analytics should not be isolated. The information should be tightly connected to upstream data so different departments can use it to drive the customer experience.
The driving force for all of the above is customer engagement - collecting and managing big data, keeping information secure, enabling mobility and analyzing social media inputs. The ultimate goal is to engage the customer, whether for marketing, customer support, participation in loyalty programs or some other outcome.
The key for customer engagement is omni-channel. Whether the interaction is initiated by the customer or the organization, customers want options in the delivery channels.
Customer engagement is not a static business area. The feedback obtained through social analytics and traditional business intelligence can be merged to explain both what customers are doing and why. That information can guide the delivery of marketing materials and help provide better customer service.
Galaxy Consulting has 17 years experience in knowledge management. We have lead knowledge management initiatives. Contact us for a free consultation.


text:
static wire_thread_t *g_wire_thread;

static wire_t *_wire_get_next(void)
{
	if (!list_empty(&g_wire_thread->ready_list)) {
		wire_t *wire = list_entry(list_head(&g_wire_thread->ready_list), wire_t, list);
		return wire;
	}

	// If we have nowhere to switch to, switch to the original starting stack
	// This will most likely result with us exiting from the application.
	return &g_wire_thread->sched_wire;
}

wire_t *wire_get_current(void)
{
	return g_wire_thread->running_wire;
}

static void _wire_switch_to(wire_t *wire)
{
	wire_t *from = wire_get_current();
	g_wire_thread->running_wire = wire;

	if (wire != from) {
#ifdef WIRE_SWITCH_DEBUG
		write(2, "Switching to wire ", strlen("Switching to wire "));
		write(2, wire->name, strlen(wire->name));
		write(2, "\n", 1);
#endif
		coro_transfer(&from->ctx, &wire->ctx);
	}
}

static void wire_schedule(void)
{
	_wire_switch_to(_wire_get_next());
}

static void _exec(wire_t *wire)
{
    wire->entry_point(wire->arg);

	// We exited from the wire, we shouldn't come back anymore
	list_del(&wire->list);

	// Invalidate memory in valgrind
	VALGRIND_MAKE_MEM_UNDEFINED(wire->stack, wire->stack_size);
	VALGRIND_MAKE_MEM_UNDEFINED(wire, sizeof(*wire));

	// Now switch to the next wire
	wire_schedule();

	// We should never get back here!
	abort();
}

void wire_thread_init(wire_thread_t *wire)
{
	g_wire_thread = wire;
	memset(g_wire_thread, 0, sizeof(*g_wire_thread));

	list_head_init(&g_wire_thread->ready_list);
	list_head_init(&g_wire_thread->suspend_list);
	sprintf(g_wire_thread->sched_wire.name, "sched %p", wire);

	// Initialize coro for the initial jump
	coro_create(&g_wire_thread->sched_wire.ctx, 0, 0, 0, 0);
	g_wire_thread->running_wire = &g_wire_thread->sched_wire;
}

void wire_thread_run(void)
{
	while (!list_empty(&g_wire_thread->ready_list)) {
		wire_schedule();
	}
}

wire_t *wire_init(wire_t *wire, const char *name, void (*entry_point)(void *), void *wire_data, void *stack, unsigned stack_size)
{
	memset(wire, 0, sizeof(*wire));

	strncpy(wire->name, name, sizeof(wire->name));
	wire->name[sizeof(wire->name)-1] = 0;

	wire->entry_point = entry_point;
	wire->arg = wire_data;
	wire->stack = stack;
	wire->stack_size = stack_size;

	coro_create(&wire->ctx, (coro_func)_exec, wire, stack, stack_size);
	list_add_tail(&wire->list, &g_wire_thread->ready_list);
	return wire;
}

void wire_yield(void)
{
	wire_t *this_wire = wire_get_current();

	// Move to the end of the ready list
	list_move_tail(&this_wire->list, &g_wire_thread->ready_list);

	// Schedule the next one (could be the same wire though!)
	wire_schedule();
}

void wire_suspend(void)
{
	wire_t *this_wire = wire_get_current();
	list_move_tail(&this_wire->list, &g_wire_thread->suspend_list);
	wire_schedule();
}

void wire_resume(wire_t *wire)
{
	list_move_tail(&wire->list, &g_wire_thread->ready_list);
}

int wire_is_only_one(void)
{
	return list_is_single(&g_wire_thread->ready_list);
}


THUMBS UP: Kunal And Ranbir Kapoor Suit Up, Ranveer Is Jacketed!
Home The Week That Was THUMBS UP: Kunal And Ranbir Kapoor Suit Up, Ranveer Is Jacketed!
This week, Ranbir Kapoor and Kunal Kapoor looked good in their suits. Ranveer Singh, meanwhile, was at the airport looking cool!This week, Ranbir Kapoor and Kunal Kapoor looked good in their suits. Ranveer Singh, meanwhile, was at the airport looking cool!
MUMBAI: This week, Ranbir Kapoor returns from Sri Lanka and immediately finds himself in the list of best-dressed men. Kunal Kapoor and Ranveer Singh join him.
Ranbir Kapoor: Ranbir Kapoor has returned from 'Bombay Velvet's shoot in Sri Lanka and has already gotten down to work. In one of his first appearances, he appeared on the finale of a dance show along with his parents Rishi Kapoor and Neetu Singh. And did he look dapper! Fully tip-top in a grey suit with a violet tie, looks like Ranbir Kapoor caught our cue and gave himself a two-thumbs-up.
Ranveer Singh: Ranveer Singh has been growing his beard, and might we add that he knows how to dress around it. He was spotted at the airport recently taking off for an awards ceremony in Durban. White tee on cream cargoes with a blue jacket wrapped around him was just the cake. The white cap and the nerdy glasses were the icing. We approve!
Kunal Kapoor: Kunal Kapoor appeared at the Miss Diva pageant dressed for the occasion. He almost took the attention away from the women participating in the pageant by dressing up in a blue suit over a white shirt. What really putt he limelight on Kunal Kapoor, though, was the bow-tie. We love the men who wear a bow over a tie. So kudos to you, Kunal!


After working in the corporate world for many years in public relations and marketing, I took my communication skills in a different creative direction as an actor. Leaving my cube behind to study acting full-time for eight months at a conservatory-style program in Toronto marked my first step into the profession. Since then, I've been fortunate to work on many projects including short and feature films, book trailers, theatre productions, commercials, corporate videos and voiceovers.


text:
'use strict';

/**
 * Main Controller
 */
angular.module('testFramework', [
    'ngAnimate',
    'ngAria',
    'ngCookies',
    'ngMessages',
    'ngResource',
    'ngSanitize'
]).controller('ConsoleCtrl', ['$scope', function ($scope) {
    $scope.awesomeThings = [
        'HTML5 Boilerplate',
        'AngularJS',
        'Karma'
    ];
}]);


text:
CRIMINAL MINDS: JOE MANTEGNA AS FAT TONY!
Criminal Minds star Joe Mantegna will be in an upcoming episode of the Simpsons as his character Fat Tony!
-Mad Men star Jon Hamm is to voice an FBI agent character on The Simpsons.
The actor will lead a sting operation against Joe Mantegna's character Fat Tony on the upcoming episode.
The Simpsons' executive producer Al Jean tells EW.com, "Jon's a gruff FBI man... He has no patience for Homer."
And Hamm's Simpsons debut might lead to more appearances on the show - because the Mad Men star was a big hit. Jean adds, "You gave him one note and he immediately did 12 great things with it. He was really funny. And handsome. He had it all."
http://www.torontosun.com/entertainment/tv/2010/07/21/14777256-wenn-story.html
Posted by Criminal Minds Fan at 7/21/2010
CRIMINAL MINDS: MEETING PAGET BREWSTER BY ROMY SKYE
CRIMINAL MINDS: MATTHEW GRAY GUBLER AT COMIC-CON
CRIMINAL MINDS: JOE MANTEGNA AT THE AFTRA CHARITY ...
CRIMINAL MINDS: SHEMAR MOORE ATTENDED THE AOF FEST...
CRIMINAL MINDS: MILES KOITER ATTENDED THE SWAN EVENT.
Criminal Minds: Kirsten Vangsness, Penelope Garci...
CRIMINAL MINDS: KIRSTEN VANGSNESS & PINK EARS
CRIMINAL MINDS: KIRSTEN AT COMIC-CON
CRIMINAL MINDS: THE EYES HAVE IT
CRIMINAL MINDS: KIRSTEN VANGSNESS IN "VAMPIRE MOB"
CRIMINAL MINDS ACTRESS KIRSTEN VANGSNESS IN VAMPIR...
CRIMINAL MINDS SEASON SIX PREMIERE DATE
CRIMINAL MINDS BIRTHDAY CARD FOR A.J. COOK
CRIMINAL MINDS: ED BERNERO TALKS ABOUT THE POSSIBL...
CRIMINAL MINDS: "HOPELESS"
CRIMINAL MINDS: JOE MANTEGNA ATTENDED FRANK NELSON...
CRIMINAL MINDS: KIRSTEN VANGSNESS & COMIC-CON
CRIMINAL MINDS: KIRSTEN VANGSNESS ON SPINOFF TOO?
CRIMINAL MINDS: JOE MANTEGNA INTERVIEW
CRIMINAL MINDS: LINK TO JOE MANTEGNA'S INTERVIEW
CRIMINAL MINDS: "HAUNTED"
CRIMINAL MINDS: JOE MANTEGNA ATTENDED WOMEN IN FIL...
CRIMINAL MINDS FUNDRAISER IN HONOR OF ANDY SWAN
CRIMINAL MINDS: KRIS CAMPBELL IN THE PREMIERE!!!!
CRIMINAL MINDS: A THOUSAND WORDS
CRIMINAL MINDS: MATTHEW GRAY GUBLER IN ROME
CRIMINAL MINDS: MATTHEW AND SIMON IN ROME
Criminal Minds: Matthew Gray Gubler, Dr. Spencer ...
CRIMINAL MINDS: BIRTHDAY CARD FOR KIRSTEN VANGSNESS
Criminal Minds calendar for July is courtesy of C...


The WORLD is being poisoned from the sky, in the name of geo-atmospheric engineering. It started as a science project to manufacture artificial clouds, for Ozone layer depletion. That has since turned into combating UV-rays from the sun and is now being used to combat climate change. Which it was meant to do all along, by creating a greenhouse umbrella trapping heat and natural gases from escaping into the upper atmosphere, like it has, under normal conditions, for millions of years. Changing the climate temperatures worldwide, governments could use false claims of global warming to impose climate change laws and fees for the public, businesses, industries and agriculture sectors worldwide. While doing nothing in the way of fixing global warming or climate change at all. Along with these new laws and fees the governments are poisoning the planet, with dangerous chemicals, being used as a jet fuel additive, which is released at high altitudes in microscopic levels, then gravity pulls them to the ground, where they are easily ingested or leach through the skin, causing all kinds of cancers, health problems and birth defects. Not too forget mentioning, poisoning the air, water, soil, and the world's food chain, we as humans depend on to survive. So please sign this petition to stop the world governments from killing this planet called EARTH, and everything on it.
Thomas Family needs your help with "World Governments: "STOP" Chemtrails". Join Thomas and 97 supporters today.


www.meidling-forum.at :: Thema anzeigen - Arsene Wenger: "Germany could go 'all the way'!"
Arsene Wenger: "Germany could go 'all the way'!"
Verfasst am: Do Jun 26, 2008 10:23 am Titel: Arsene Wenger: "Germany could go 'all the way'!"
Germany could go 'all the way'!
Arsenal manager Arsene Wenger, who knows a thing or two about winning trophies, tipped Germany to win Euro 2008 on Tuesday, predicting they would beat Spain in Sunday's final in Vienna.
He also said that Michael Ballack, who plays for Arsenal's London rivals Chelsea, had been the most consistent player in the tournament so far, although he also praised Russian forward Andrei Arshavin who has inspired his team after being suspended for the opening two matches.
Wenger told reporters that Germany had a mental toughness other teams lacked and believed "they would edge" Spain in the final.
"Germany always appear to have unrest in the camp, but when they go into a match they are united. They are one of the few countries I know whose players can have a go against each other in the newspapers two days before a game, but they go into a game united and very strong.
"They always have a kind of simplicity in their collective game. They never use too many touches, they keep it simple and they play as a team, and in the final third they are very efficient." He singled out captain Ballack as their main inspiration.
"I believe that he has brought a new dimension to his game and is the undoubted leader of the team.
"Lukas Podolski is also having a great tournament, but if you look at Michael Ballack, he makes his team play, he is efficient, he can score goals.
He has been the most consistent player in the tournament since the opening day.
"I think Germany will edge Spain in the final.
They have a belief that comes from their history and that history gives them strength.
"Spain's biggest handicap is that they haven't won anything for more than 30 years, play two or three games and then go home." Germany have massive belief and you saw that in the quarter-finals. All the teams were at the same level technically. What made the difference was their mental aspect." Wenger also praised Russia and said they had "improved dramatically" since he saw them lose to Israel in the qualifiers, and agreed that Arshavin had made an enormous impact in Russia's last two matches.
Despite tipping Spain to beat Russia in the semifinal today, Wenger said: "Russia have the best movement on and off the ball, and they use space better than any other team.
"What is quite amazing is that Russia is the only country where a player like Arshavin suddenly comes to the world's attention at the age of 27.
That is not possible anywhere else.
"They have a belief that comes from their history and that history gives them strength."
It's their historical work ethic.


text:
Waiting on a Package? It May Be at One of These U.S. Ports
Micron to Spend $150B Over 10 Years to Lift Chip Output, Meet Demand
Micron Technology will spend $150 billion over a 10-year period to expand current facilities and build new ones, a media report says.
Tony Owusu
Shares of Micron Technology (MU) - Get Micron Technology, Inc. Report rose on Wednesday after the chipmaker said, according to a media report, that it planned to invest more than $150 billion over the next 10 years to meet increasing demand.
The Boise, Idaho, company plans to spend some of that money to expand its current chip-production facilities and potentially build new ones.
A worldwide semiconductor shortage has hampered production in consumer electronics, cars and many other industries.
"We will be engaging with the governments around the globe, including in the U.S., to address our needs for growing our supply in line with our demand expectations for the 2030 era," Chief Executive Sanjay Mehrotra told The Wall Street Journal.
Mehrotra urged U.S. lawmakers to step in to help bring manufacturing back to the West. He said he supported proposals from the Joe Biden administration to boost domestic chip production.
TheStreet Recommends
TurboTax Ends Free Filing With IRS Ahead of 'Challenging' Tax Season
Shares of Micron on Wednesday closed 1% higher to $68.27.
The Journal report notes that in 1990 more than three-quarters of chips were produced in the U.S. and Europe. Today those two account for less than a quarter of chips produced.
In June, the Senate passed legislation to increase government spending on technology research and development, and included $52 billion to encourage semiconductor production domestically.
A number of chipmakers have said they planned to increase capacity, the Journal notes.
In September, Intel (INTC) - Get Intel Corporation Report said it planned to invest $95 billion in building new factories across Europe.
Intel intends to build two new chip facilities in Europe and could expand from that, bringing the total spend to as much as 80 billion euros, or $95 billion, CEO Pat Gelsinger said, according to The Journal.
StocksTechnologySemiconductors & Semiconductor EquipmentTechnology Hardware & EquipmentInvesting
By Scott Rutt
By Ellen Chang
By Veronika Bondarenko
Crypto Market Lost $1.2 Trillion in 74 Days - and It Might Not Be Over Yet
By Luc Olinga
By Dan Weil
What Is a Leverage Ratio? Definition, Calculation, and Examples
By TheStreet Staff


Happy National Volunteer Week! This week, we recognize the enormous contribution that volunteers make to VCH every day.
You can often see volunteers, wearing their bright blue vests, assisting patients and visitors at VGH and UBC Hospital (UBCH), as well as many other centres across VCH. However, there are many more volunteers that you may never see; these are the volunteers at the local libraries helping stroke survivors learn to speak again, running harm reduction programs on city's east side and supporting new moms at risk in their homes and communities. During National Volunteer Week, we say thank you to each and every volunteer who gives their time to support our patients, residents and clients and for making a difference every day.
One of the ways that the VCH-Vancouver Volunteer Resources Department expresses its thanks during National Volunteer Week is by recognizing volunteers who have made an outstanding contribution and who promise to make an even bigger impact on health care in the future.
Each year, a $500 prize is offered to four of our student volunteers. In March, 35 applicants wrote a short essay describing their volunteer experiences and sharing the insights that they have gained through those experiences. This year, three of the four award winners have volunteered in both the acute and community sectors.
Angela Yang has volunteered with VCH since 2015. This year, she is graduating from UBC with an undergraduate degree in medical anthropology and public health. She has volunteered in the Travel Clinics, at the VGH information desk and as a wayfinder. Presently, she volunteers in the VGH Emergency Department (ED). As she explains, her experiences in the ED "have allowed [her] to grow as a person and to develop greater compassion, empathy and patience." Angela plans on pursuing a career as an ICU nurse in the future.
Albert Huang has been a volunteer with VCH for approximately one year. He has volunteered with the Children's Immunization Clinics and presently volunteers with both a needle exchange program and a social recreation program at Purdy Pavilion at UBCH. He is in the second year of a bachelor's degree in sciences at UBC and is working towards a career in medicine. He credits volunteering with shaping his career path. "My time volunteering with the residents at Purdy Pavilion has helped to inspire a deeper interest in geriatrics and psychiatry," he says.
Eric Chow began volunteering with VCH seven years ago, when he was still in high school. Now he is graduating with an undergraduate degree in sciences, with a biology major. Eric has volunteered his time visiting renal dialysis patients, helping with physiotherapy in Banfield Pavilion and assisting with wayfinding at VGH. As he describes it, his time in the dialysis unit "visiting and talking to individuals and family members who are affected by kidney disease has been a humbling experience." His future plans are to pursue a master's degree at UBC in medical genetics with a focus on genomics and bioinformatics.
Lara Milic volunteers in the community sector with Children's Immunization Clinics and the C.U.D.D.L.E. Program. She's always known that she wanted to be a nurse but realized that she needed to gain some practical experience. That's when she started volunteering with VCH last year. She credits her experience with the clinics as "having instilled confidence in me, not only in becoming a nurse but with growing into my own person." She has applied to the Nursing program at BCIT and hopes to hear soon about her acceptance.
These four students exemplify the dedication that all of our volunteers demonstrate. By sharing their stories, Volunteer Resources recognizes all those who give so generously and who share our common commitment to our patients, residents and clients. Thank you for your time and dedication.


Talk2yrt.ca is a multimedia question-and-answer website for YRT.
It's simple: explore existing question-and-answers, or ask your own!
There are currently no unanswered questions.
To submit a new question, type it into the search box.
We might follow-up with you but only if you submit this question via email.
We were unable to authenticate your credentails.
It looks like we've never been asked this question.


Two-Button and Three-Button Entry Transmitters require the addition of the Universal Receiver to operate garage door openers.
This GREEN 433.92 MHz rolling code transmitter manages Identity Codes and Certificates and has a self-learning and built-in proximity receiver. With 72 bit O-Code encoding, it is also compatible with Nice FLOR encoding receivers.
Our YELLOW Inti 2-channel gate remote control has an estimated range of 150 meters outdoors. With 72 bit O-Code encoding, it is compatible with Nice FLOR encoding receivers.
Our LILAC Inti 2-channel gate remote control has an estimated range of 150 meters outdoors. With 72 bit O-Code encoding, it is compatible with Nice FLOR encoding receivers.
This blue 433.92 MHz rolling code transmitter manages Identity Codes and Certificates and has a self-learning and built-in proximity receiver. With 72 bit O-Code encoding, it is also compatible with Nice FLOR encoding receivers.
Our BLACK Inti 2-channel gate remote control has an estimated range of 150 meters outdoors. With 72 bit O-Code encoding, it is compatible with Nice FLOR encoding receivers.
This is a 433.93 mhz transmitter compatible with the Apollo receivers at a better price.


text:
Kathy Griffin's friendship with Anderson Cooper ended after Trump photo
By Hecate
Anderson Cooper, Controversies, Kathy Griffin
I can't believe we are still talking about Kathy Griffin's controversial photo holding a bloodied #45 mask. So many offensive things have happened since then, mostly by #45 and his administration, that have jettisoned this particular controversy from my short-term memory. However, one of those people still talking about it is Kathy herself. I don't think the argument 'but the interviewer asked about it' applies here as well because Kathy's new tour is called "Laugh Your Head Off" and the promotional image is of Kathy in the same blouse and pose as the photo, only she is holding the earth as opposed to a mask. Kathy gave an in-depth interview to The Cut about the stunt and its aftermath. It's a great article and if this holds any interest for you, I recommend you read the whole thing. Full-disclosure, I like the article so much because it speaks to exactly how I feel about the situation. I have and do maintain that I thought the photo was distasteful but I was not shocked nor particularly outraged by it. I think #45 was wrong to come after Kathy and that, as usual, the reaction from his supporters was deplorable. However, I also thought Kathy's handling of the fallout bordered on absurd and, as she admits in the interview, she played the victim. She also, as a few people in the article point out, fed the #45ers exactly what they needed to attack the left.
I also supported Anderson Cooper's denouncement of Kathy and her photo. Kathy understands it too but said that the amount of time it took Anderson to reach out to her ended their friendship.
Griffin's best-known celebrity friendship, going back 17 years, is with CNN anchor Anderson Cooper. But after TMZ published the photo, Cooper came under tremendous pressure to repudiate it. Without reaching out to Griffin, he tweeted the same night: "For the record, I am appalled by the photo shoot Kathy Griffin took part in. It is clearly disgusting and completely inappropriate." Griffin acknowledges that Cooper was in an untenable position, but she feels that their long friendship afforded her a call or text message beforehand.
In the following days, Griffin says four of Cooper's CNN colleagues reached out repeatedly to Griffin to check on her and offer private support (I independently confirmed this). But Cooper didn't contact Griffin until August 10, CNN confirmed to me.
On July 26, when asked about Griffin on Andy Cohen's talk show, Watch What Happens Live with Andy Cohen, Cooper claimed that Griffin was still a friend. "Yeah, we're still friends, and look I said what I said about — I didn't think what she said was appropriate, but I wish her the best and I hope she bounces back," he told Cohen.
The fact that Cooper was telling people publicly they were friends, while not checking in with her, hurt Griffin deeply. When he finally reached out to her in a series of text messages, she told him their friendship was over.
A source close to Cooper tells me that Cooper was "shocked and upset by the photo, and while he was not ready to talk to her personally about it, he still considered her to be a friend, and was publicly supportive when asked about the controversy."
[The Cut]
This will not be a popular opinion but I see both sides on this. I get that Anderson was a close friend and regardless of Kathy's own exploitation of her actions, she was probably hurt by his radio silence as she came under attack. I wonder, though, if Anderson didn't feel he deserved a heads up before the photo was posted. Most people know they're friends, he's a journalist on a news station that is directly in #45's sights and is run by Jeff Zucker, who gave Kathy her comeback. Of course he had to denounce it. I'll bet the calls started coming in the minute that photo went live and Anderson was caught completely unprepared. That would tick me off. As for Kathy being fired from her New Year's Eve gig, based on reading this article, I think that's all on Zucker. I think he and Kathy have been at loggerheads for years and this just gave him the excuse he needed.
Unrelated to Anderson but the article mentioned that amidst all the people telling Kathy the photo was a dumb move, the one call that made her realize she crossed a line was from Rosie O'Donnell. Rosie asked: "What is James Foley's mom going to think when she sees this?" Journalist James Foley was beheaded by ISIS, most of which was broadcasted in a viral video. It speaks volumes that it was Rosie who showed Kathy her error in judgement, lord knows there's no love lost between #45 and Rosie.
As I said, the article is comprehensive. It's shows how Kathy is still using the controversy to her advantage. It also notes that Kathy talked throughout about all the support she received however no public figures would comment on the record when asked. It also details how every one of the politicians who embraced Kathy's endorsement (and massive fundraising efforts), turned their backs or cancelled events arranged by or involving Kathy. I get why Anderson's snub cut the deepest but he was not alone in distancing himself from this until it blew over. Of course, in order for it to blow over, Kathy would have to stop talking about it.
Photo credit: WENN Photos and Getty Images
- Carrie from SATC made terrible decisions and didn't grow [Buzzfeed]
- Review of MacGruber on Peacock [Pajiba]
- Will Tom Cruise be in the Dr. Strange sequel? [Dlisted]
- Photos of Dolly Parton through the years [Go Fug Yourself]
- What is leaving Netflix next month [Just Jared]
- Rihanna in an all leather outfit [Hollywood Life]
- Trailer for Outlander season six [Seriously OMG]
- Miranda Cosgrove in Alice + Olivia [RCFA]
24 Responses to "Kathy Griffin's friendship with Anderson Cooper ended after Trump photo"
We close comments on older posts to fight comment spam.
Skylark says:
I had no probs with the trump pic – talk about a storm in a teacup – but I don't like Griffin or the snivelling Anderson so really couldn't care less about their friendship fall-out.
Pandy says:
I do not have any issues with the pic either. She's a comic. Her job is to instigate. AC spends three hours a night picking apart all things Trump (rightfully so) but threw her under the bus. I wouldn't be his friend again either. #TeamGriffinAllTheWay
Rascalito says:
Her holding Donald Trump's severed head was just women's locker room talk.
Maple Girl says:
I also see both sides of the story, but for lifelong friends, he should have reached out to her before or right after the tweet.
OG OhDear says:
I get why he tweeted what he tweeted, but I think he acted badly here. She says that not only did he not give her a heads up, he waited weeks before reaching out to her even though he was telling outlets that they were still close friends. Honestly, I completely get why she's so pissed. He can't have it both ways.
Yeah, but friends screw up sometimes. I'd be reluctant to let go of a long time friend over this. She knew she put Anderson in a difficult place. I think he kept saying they were friends to let her know he was in a tough spot.
AnnaKist says:
She was being interviewed via satellite on one of our inane breakfast shows, yesterday, I think. When asked about the tRump fiasco, she told the female interviewer, "You're full of shit! " The interviewer is a ninny, but, still…rude. I can't stand CG.
Sort of related, but the author of The Cut article also tweeted some tidbits about the Kardashian Wests (they and Griffin are neighbors). Apparently the KWs are very good neighbors, Kim was supportive of KG when the whole thing went down and continues to be supportive, plus when KG's mom is feeling lonely Kim brings the kids over.
ArchieGoodwin says:
well, look. He knows her better than we do. He knows and has experienced first hand how she handles her life, issues and consequences of her actions. He knows if she accepts responsibility or makes excuses, if she tries to learn from the past or is doomed to repeat it.
And has been her friend through it all. So, if this instance he chose not to contact her right away, his silence speaks volumes. Some of us talked the other day about setting boundaries in friendships. He said what he thought best in public, though it is unfair to ask that of him.
It is ok to take breaks from people. Especially in a self created drama.
Also, it is not only her ideas of friendship that are in play here. She doesn't get to define their friendship based only on what he contributes, at her whim.
Personally, he's better off. Who needs this level of crap?
Enough Already says:
Completely agree. He is not some monkey on a string he was half of a friendship. It hit a bump and both chose to handle it in their own way. Griffin didn't think Cooper reached out in time and Cooper thought Griffin crossed the line. Hurt feelings ensued but by her own admission Griffin ended the relationship. It was a hasty, petulant decision she will more than likely regret. Cooper had the right to process his reaction on his own timetable. Who does she think she is?
tty says:
Agree. This is only a small part of her antics that we see. Who knows what kind of sh!t he's put up with from her before. It's also not the first time her actions have landed him in a tough spot professionally. She's exhausting, and I'm not surprised if he's decided he's had enough.
mia girl says:
I agree with both of you.
Kathy has a right to do what she did, but she needs to own that she did it and there are repercussions to her choices.
Aside from their friendship, Griffin and Cooper also had a working partnership with their New Year's program that was jeopardized by what she did. And as @Hecate points out (and Kathy herself), the way she handled the whole thing in the days after hurt more than helped. I think Cooper was put in a terrible, complicated position.
Plus, let's be honest – she is still trying to play the victim by now talking about her lost friendship with Cooper. She could have talked about the public backlash and not specifically about cutting off her friendship with him. She name checked him because she hoped it would give her some sympathy.
lucy2 says:
I agree completely too.
I thought the stunt she and the photographer did was gross and way over the line (and I hate Cheeto Mussolini) and I don't blame him for stepping back. I have friends who I need a break from, and none of them have done anything even close to that.
Side note, I've always found her extremely obnoxious.
Ksenia says:
She's insufferable. A pathological fame whore who couldn't make it as a famous *anything* in Hollywood, so resorts to telling jokes and "secrets" about real celebrities/actors. She is always hoping some of their fame will rub off on her; and her jokes are, to me, far more bitter and ugly than funny. She's the girl who was bullied throughout high school but always wanted to be popular; "making fun" of the popular is the closest that she can get to them. She's all cheap shots, nothing more. I'm glad her self centeredness is finally doing her in.
Carrie1 says:
Bullshit. Anderson enjoyed "this level of crap" every New Year's Eve and it helped build his career. Kathy being obnoxious built their NY eve every year.
I don't care for Kathy professionally but as a human being, she's neither the worst nor is she always obnoxious. She's a comedian. Most in that profession are at times obnoxious.
Of all the fallout from this, I immediately had same thought as Rosie O and was surprised Kathy did this. And Al Franken is also in a much more compromised (if you're a childish wuss I guess?) professional role and he handled it exactly right.
Anderson lost my respect over how he handled this. Serious bad move and of course it ends a friendship. He's an immature user. Glad she found out now rather than later.
lem says:
i was so pissed when she pulled that stunt. she knew it would be a huge controversy and it gave the right fuel. if the left is going to (rightfully) criticize people like ted nugent for his comments re obama, we have to be better than that and not stoop to the same levels. and rosie was right—that kind of thing isn't funny. it's horrifying.
sunshine gold says:
Agree 1000%.
Radley says:
Meh. Perfection is not a requirement for friendship. Otherwise we'd all be friendless. There's fault to be found on both sides. I think they can both move past it in time. One of them needs to make the first move though. Or a mutual friend needs to mediate. No need to make their friendship collateral damage in the Trump sh!tstorm of 2017.
Zero f–ks to give. Griffin probably thought her friendship with Cooper would insulate her from some of the fallout. She wanted to use the country's hatred of Trump as a PR boost but forgot that we are angry, disgusted and afraid, not vile, petty and violent. Imo she trued to use Cooper and popular sentiment to her own advantage and it backfired. Her 15 minutes was a few decades too long anyway.
jferber says:
I agree, Radley. In the long run, true friends do f–k up sometimes and hopefully there's a way to make it right eventually.
Anoneemouse says:
She tweets something controversial and inappropriate; he responds; she gets offended?
She then apologizes for the "inappropriate" picture.
She then waits 2 months and retracts her apology.
And then ends her friendship with Anderson?
She claims she posted the pic because of her right to "free speech."
Wasn't Anderson's response to her pic his right to "free speech?"
littlemissnaughty says:
No. He was a bad friend and that's that. Do we remember how long it took him to make his opinion known about Trump? The man was a disgrace and Cooper stayed journalist-neutral for months. Sometimes your humanity comes before being a reporter. It took him 2 seconds to sh*t on her. How does that add up? She made a mistake and did something disgusting. It cost her jobs. It landed Trump in the White House. Perspective, people.
Yep. Al Franken didn't tweet about her. He handled it well. He said she was wrong, he was disappointed, but she is still a friend. Which is what a mature professional does when handling life properly.
Judging your friends publicly before reaching out privately when they need support is a seriously messed up move. Nobody deserves friends like that.
CharlotteCharlotte says:
Kathy is using her exposure, like her or not, to stand up for what she believes in. You don't have to agree with her, but it's her right to do it. She's being true to herself. Good for her.
I don't like that the picture gave the mm something to target, and I don't like the good people who were hurt by it, but she was making a point that I agree with. 45 needs to go. All of his ilk need to go.
Kate wore Jigsaw to museum event
Charles invited Sussexes to stay with him
Sussex business setup criticized
Sussexes won't visit UK this spring
Bot Sentinel: Meghan hate is lucrative


How are our Biker Ankle Boots?
The New Rock ankle boots are made for a people that looking for comfort over all things. Its attractive designs in colors such as black or brown combine with any look And its metal heel, resist any kind of problems on two wheels or on the street of the city.
If you are a boy we recommend that you wear them with jeans, shorts. If you want to wear them in summer, a basic T-shirt is perfect. But if you want to wear it in winter we recommend a sweatshirt.
If you are a girl, certainly the best option to go out at night, is to wear them with a leather jacket and a long dress.
How to buy our Biker Ankle Boots?
When you have chosen, you should follow the instructions!You only have to wait until we receive the payment and once received. If after seeing them and trying them you are not convinced .. DO NOT WORRY !! You have 14 days since you receive your biker ankle boots to make the return or change ... WITHOUT ANY PROBLEM. Except CUSTOM MADE boots that do not allow changes or returns because we manufacture them expressly for you.


Distilled from Pema Chödrön's commencement speech at Naropa University on the day of her granddaughter's graduation, this offering from the beloved teacher and author offers us a gem of clarity and compassion to help us get back on our feet and into our hearts.
When her granddaughter was accepted to Naropa University, the celebrated author Pema Chödrön promised that she'd speak at the commencement ceremony.
But what if failing wasn't just "okay" . . . but the most direct way to becoming a more complete, loving, and fulfilled human being?
Here, Pema Chödrön offers us her heartfelt advice on facing the unknown—in ourselves and in the world— and how our missteps can open our eyes to see new possibilities and purpose.


At Big Buoy, we promise to take care of your every need, and that you'll pay up to 50% less than other local fishing lodges.
*Daily Rate only includes lunch and beverages.
If you cancel your booking your deposit will not be refundable, however your deposit can be transferred to another date available, that suits you better. Just in case the total amount has been paid, and your days will be recovered or rebooked, under management's discretion, we'll refund the balance or part of it, on the function of the new agreed booking.


text:
Obituary for William Edward "Bill" Fuller
Bill Fuller, 60, of Kersey, CO passed away April 28, 2018 in Kersey.
He was born May 21, 1957 in Deadwood, SD to Edward and Mildred (Grant) Fuller. On October 22, 1983 in Newcastle, WY, Bill married Pamela Kirch.
Bill attended Spearfish High School in Spearfish, SD. After high school he served in the US Army from 1974 – 1979 as an auto and heavy machinery mechanic. While in the army he was stationed in Nuremberg, Germany. Bill proudly served his country and flew the American flag in front of his house year-round.
Bill was an ASE (Automotive Service Excellence) Master Certified Auto Technician for over 30 years. He worked for Cowboy Dodge in Cheyenne, WY, Phil's Pro Auto, and Scott's Import Auto Specialists in Greeley, CO.
Bill grew up in Spearfish, SD and enjoyed the Black Hills so much, and especially enjoyed camping, fishing, hiking, snow mobiling, and hunting. Bill and Pam also owned a RV and fishing boat, and on the weekends that was an outdoor activity that was very much enjoyed. Bill also enjoyed going for walks. He designed his house that he had built in Kersey. Bill and Pam would have devotions and prayers together every morning, and the Lord's Prayer was his favorite. His faith in the Lord was most important to him. In 2008 Bill lost a significant amount of his vision due to ischemic optic neuropathy. He was very independent at home and in the community. After his loss of vision, Bill continued to volunteer for Scott's Auto Import Specialists as an auto technician specialist. Bill received assistance and positive solutions to the challenges he dealt with due to his vision loss the last ten years through National Federation for the Blind, Curtis Strong, Low Vision Center, Ensight, and the Division of Vocational Rehabilitation. He also received assistance and support through Connections for Independent living where Pam is employed. He was a kind soul who loved to assist other people to let them become more independent. Bill and Pam were a unique couple as Bill used a white cane and Pam uses a walker. Bill would always tell Pam that she was his eyes, and Pam would respond that he was her legs, so together they made a complete person!
He was a member of Gloria Christi Lutheran Church in Greeley since 1999, a 21-year member of the Greeley American Legion Post 18, National Federation for the Blind for the last 10 years, and when he was younger was a member of the Boy Scouts.
Bill is survived by his wife, Pamela of Kersey; son, Israel "John" Mares (Colten) of Greeley; mother, Mildred Fuller of Sheridan, WY; brother, Tom Fuller of Cheyenne; sisters, Susan (John) Bigelow of Sheridan, and Barb (Rob) Troxel of Boise, ID; brothers-in-law, Richard (Janet) Kirch of Fremont, NE, Gary (Virginia) Kirch of Blair, NE, and Stanley (Elaine) Kirch of Wisner, NE; and numerous nieces and nephews. Bill also had numerous friends in the Cheyenne, Greeley, and Kersey communities.
He was preceded in death by his father, Edward Fuller.
Visitation will be on Sunday, May 6, 2018 from 3-5 p.m. at Adamson. Life Celebration service will be on Monday, May 7, 2018 at 10 a.m. at Gloria Christi Lutheran Church, 1322 31st Avenue, Greeley, CO 80634. Interment will be in Linn Grove Cemetery.
Memorial contributions may be made to "Gloria Christi Lutheran Church" in care of Adamson Life Celebration Home, 2000 47th Ave., Greeley, CO 80634.
To extend condolences to the family go to adamsoncares.com


text:
namespace System.Runtime.Serialization
{
    using System;
    using System.Collections;
    using System.Collections.Generic;
    using System.Diagnostics.CodeAnalysis;
    using System.Globalization;
    using System.Reflection;
    using System.Threading;
    using System.Text;
    using System.Xml;
    using System.Security;

#if USE_REFEMIT
    public sealed class EnumDataContract : DataContract
#else
    internal sealed class EnumDataContract : DataContract
#endif
    {
        [Fx.Tag.SecurityNote(Critical = "Holds instance of CriticalHelper which keeps state that is cached statically for serialization."
            + " Static fields are marked SecurityCritical or readonly to prevent data from being modified or leaked to other components in appdomain.")]
        [SecurityCritical]
        EnumDataContractCriticalHelper helper;

        [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.",
            Safe = "Doesn't leak anything.")]
        [SecuritySafeCritical]
        internal EnumDataContract()
            : base(new EnumDataContractCriticalHelper())
        {
            helper = base.Helper as EnumDataContractCriticalHelper;
        }

        [Fx.Tag.SecurityNote(Critical = "Initializes SecurityCritical field 'helper'.",
            Safe = "Doesn't leak anything.")]
        [SecuritySafeCritical]
        internal EnumDataContract(Type type)
            : base(new EnumDataContractCriticalHelper(type))
        {
            helper = base.Helper as EnumDataContractCriticalHelper;
        }

        [Fx.Tag.SecurityNote(Critical = "Accesses SecurityCritical static cache to look up base contract name for a type.",
            Safe = "Read only access.")]
        [SecuritySafeCritical]
        static internal XmlQualifiedName GetBaseContractName(Type type)
        {
            return EnumDataContractCriticalHelper.GetBaseContractName(type);
        }

        [Fx.Tag.SecurityNote(Critical = "Accesses SecurityCritical static cache to look up a base contract name.",
            Safe = "Read only access.")]
        [SecuritySafeCritical]
        static internal Type GetBaseType(XmlQualifiedName baseContractName)
        {
            return EnumDataContractCriticalHelper.GetBaseType(baseContractName);
        }

        internal XmlQualifiedName BaseContractName
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical BaseContractName property.",
                Safe = "BaseContractName only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.BaseContractName; }

            [Fx.Tag.SecurityNote(Critical = "Sets the critical BaseContractName property.")]
            [SecurityCritical]
            set { helper.BaseContractName = value; }
        }

        internal List<DataMember> Members
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical Members property.",
                Safe = "Members only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.Members; }

            [Fx.Tag.SecurityNote(Critical = "Sets the critical Members property.")]
            [SecurityCritical]
            set { helper.Members = value; }
        }

        internal List<long> Values
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical Values property.",
                Safe = "Values only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.Values; }

            [Fx.Tag.SecurityNote(Critical = "Sets the critical Values property.")]
            [SecurityCritical]
            set { helper.Values = value; }
        }

        internal bool IsFlags
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical IsFlags property.",
                Safe = "IsFlags only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.IsFlags; }

            [Fx.Tag.SecurityNote(Critical = "Sets the critical IsFlags property.")]
            [SecurityCritical]
            set { helper.IsFlags = value; }
        }

        internal bool IsULong
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical IsULong property.",
                Safe = "IsULong only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.IsULong; }
        }

        XmlDictionaryString[] ChildElementNames
        {
            [Fx.Tag.SecurityNote(Critical = "Fetches the critical ChildElementNames property.",
                Safe = "ChildElementNames only needs to be protected for write.")]
            [SecuritySafeCritical]
            get { return helper.ChildElementNames; }
        }

        internal override bool CanContainReferences
        {
            get { return false; }
        }

        [Fx.Tag.SecurityNote(Critical = "Holds all state used for (de)serializing enums."
            + " Since the data is cached statically, we lock down access to it.")]
#if !NO_SECURITY_ATTRIBUTES
        [SecurityCritical(SecurityCriticalScope.Everything)]
#endif
        class EnumDataContractCriticalHelper : DataContract.DataContractCriticalHelper
        {
            static Dictionary<Type, XmlQualifiedName> typeToName;
            static Dictionary<XmlQualifiedName, Type> nameToType;

            XmlQualifiedName baseContractName;
            List<DataMember> members;
            List<long> values;
            bool isULong;
            bool isFlags;
            bool hasDataContract;
            XmlDictionaryString[] childElementNames;

            static EnumDataContractCriticalHelper()
            {
                typeToName = new Dictionary<Type, XmlQualifiedName>();
                nameToType = new Dictionary<XmlQualifiedName, Type>();
                Add(typeof(sbyte), "byte");
                Add(typeof(byte), "unsignedByte");
                Add(typeof(short), "short");
                Add(typeof(ushort), "unsignedShort");
                Add(typeof(int), "int");
                Add(typeof(uint), "unsignedInt");
                Add(typeof(long), "long");
                Add(typeof(ulong), "unsignedLong");
            }

            [SuppressMessage(FxCop.Category.Usage, "CA2301:EmbeddableTypesInContainersRule", MessageId = "typeToName", Justification = "No need to support type equivalence here.")]
            static internal void Add(Type type, string localName)
            {
                XmlQualifiedName stableName = CreateQualifiedName(localName, Globals.SchemaNamespace);
                typeToName.Add(type, stableName);
                nameToType.Add(stableName, type);
            }

            static internal XmlQualifiedName GetBaseContractName(Type type)
            {
                XmlQualifiedName retVal = null;
                typeToName.TryGetValue(type, out retVal);
                return retVal;
            }

            static internal Type GetBaseType(XmlQualifiedName baseContractName)
            {
                Type retVal = null;
                nameToType.TryGetValue(baseContractName, out retVal);
                return retVal;
            }

            internal EnumDataContractCriticalHelper()
            {
                IsValueType = true;
            }

            internal EnumDataContractCriticalHelper(Type type)
                : base(type)
            {
                this.StableName = DataContract.GetStableName(type, out hasDataContract);
                Type baseType = Enum.GetUnderlyingType(type);
                baseContractName = GetBaseContractName(baseType);
                ImportBaseType(baseType);
                IsFlags = type.IsDefined(Globals.TypeOfFlagsAttribute, false);
                ImportDataMembers();

                XmlDictionary dictionary = new XmlDictionary(2 + Members.Count);
                Name = dictionary.Add(StableName.Name);
                Namespace = dictionary.Add(StableName.Namespace);
                childElementNames = new XmlDictionaryString[Members.Count];
                for (int i = 0; i < Members.Count; i++)
                    childElementNames[i] = dictionary.Add(Members[i].Name);

                DataContractAttribute dataContractAttribute;
                if (TryGetDCAttribute(type, out dataContractAttribute))
                {
                    if (dataContractAttribute.IsReference)
                    {
                        DataContract.ThrowInvalidDataContractException(
                                SR.GetString(SR.EnumTypeCannotHaveIsReference,
                                    DataContract.GetClrTypeFullName(type),
                                    dataContractAttribute.IsReference,
                                    false),
                                type);
                    }
                }
            }

            internal XmlQualifiedName BaseContractName
            {
                get
                {
                    return baseContractName;
                }
                set
                {
                    baseContractName = value;
                    Type baseType = GetBaseType(baseContractName);
                    if (baseType == null)
                        ThrowInvalidDataContractException(SR.GetString(SR.InvalidEnumBaseType, value.Name, value.Namespace, StableName.Name, StableName.Namespace));
                    ImportBaseType(baseType);
                }
            }

            internal List<DataMember> Members
            {
                get { return members; }
                set { members = value; }
            }

            internal List<long> Values
            {
                get { return values; }
                set { values = value; }
            }

            internal bool IsFlags
            {
                get { return isFlags; }
                set { isFlags = value; }
            }

            internal bool IsULong
            {
                get { return isULong; }
            }

            internal XmlDictionaryString[] ChildElementNames
            {
                get { return childElementNames; }
            }

            void ImportBaseType(Type baseType)
            {
                isULong = (baseType == Globals.TypeOfULong);
            }

            void ImportDataMembers()
            {
                Type type = this.UnderlyingType;
                FieldInfo[] fields = type.GetFields(BindingFlags.Static | BindingFlags.Public);
                Dictionary<string, DataMember> memberValuesTable = new Dictionary<string, DataMember>();
                List<DataMember> tempMembers = new List<DataMember>(fields.Length);
                List<long> tempValues = new List<long>(fields.Length);

                for (int i = 0; i < fields.Length; i++)
                {
                    FieldInfo field = fields[i];
                    bool enumMemberValid = false;
                    if (hasDataContract)
                    {
                        object[] memberAttributes = field.GetCustomAttributes(Globals.TypeOfEnumMemberAttribute, false);
                        if (memberAttributes != null && memberAttributes.Length > 0)
                        {
                            if (memberAttributes.Length > 1)
                                ThrowInvalidDataContractException(SR.GetString(SR.TooManyEnumMembers, DataContract.GetClrTypeFullName(field.DeclaringType), field.Name));
                            EnumMemberAttribute memberAttribute = (EnumMemberAttribute)memberAttributes[0];

                            DataMember memberContract = new DataMember(field);
                            if (memberAttribute.IsValueSetExplicit)
                            {
                                if (memberAttribute.Value == null || memberAttribute.Value.Length == 0)
                                    ThrowInvalidDataContractException(SR.GetString(SR.InvalidEnumMemberValue, field.Name, DataContract.GetClrTypeFullName(type)));
                                memberContract.Name = memberAttribute.Value;
                            }
                            else
                                memberContract.Name = field.Name;
                            ClassDataContract.CheckAndAddMember(tempMembers, memberContract, memberValuesTable);
                            enumMemberValid = true;
                        }

                        object[] dataMemberAttributes = field.GetCustomAttributes(Globals.TypeOfDataMemberAttribute, false);
                        if (dataMemberAttributes != null && dataMemberAttributes.Length > 0)
                            ThrowInvalidDataContractException(SR.GetString(SR.DataMemberOnEnumField, DataContract.GetClrTypeFullName(field.DeclaringType), field.Name));
                    }
                    else
                    {
                        if (!field.IsNotSerialized)
                        {
                            DataMember memberContract = new DataMember(field);
                            memberContract.Name = field.Name;
                            ClassDataContract.CheckAndAddMember(tempMembers, memberContract, memberValuesTable);
                            enumMemberValid = true;
                        }
                    }

                    if (enumMemberValid)
                    {
                        object enumValue = field.GetValue(null);
                        if (isULong)
                            tempValues.Add((long)((IConvertible)enumValue).ToUInt64(null));
                        else
                            tempValues.Add(((IConvertible)enumValue).ToInt64(null));
                    }
                }

                Thread.MemoryBarrier();
                members = tempMembers;
                values = tempValues;
            }
        }

        internal void WriteEnumValue(XmlWriterDelegator writer, object value)
        {
            long longValue = IsULong ? (long)((IConvertible)value).ToUInt64(null) : ((IConvertible)value).ToInt64(null);
            for (int i = 0; i < Values.Count; i++)
            {
                if (longValue == Values[i])
                {
                    writer.WriteString(ChildElementNames[i].Value);
                    return;
                }
            }
            if (IsFlags)
            {
                int zeroIndex = -1;
                bool noneWritten = true;
                for (int i = 0; i < Values.Count; i++)
                {
                    long current = Values[i];
                    if (current == 0)
                    {
                        zeroIndex = i;
                        continue;
                    }
                    if (longValue == 0)
                        break;
                    if ((current & longValue) == current)
                    {
                        if (noneWritten)
                            noneWritten = false;
                        else
                            writer.WriteString(DictionaryGlobals.Space.Value);

                        writer.WriteString(ChildElementNames[i].Value);
                        longValue &= ~current;
                    }
                }
                // enforce that enum value was completely parsed
                if (longValue != 0)
                    throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.InvalidEnumValueOnWrite, value, DataContract.GetClrTypeFullName(UnderlyingType))));

                if (noneWritten && zeroIndex >= 0)
                    writer.WriteString(ChildElementNames[zeroIndex].Value);
            }
            else
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.InvalidEnumValueOnWrite, value, DataContract.GetClrTypeFullName(UnderlyingType))));
        }

        internal object ReadEnumValue(XmlReaderDelegator reader)
        {
            string stringValue = reader.ReadElementContentAsString();
            long longValue = 0;
            int i = 0;
            if (IsFlags)
            {
                // Skip initial spaces
                for (; i < stringValue.Length; i++)
                    if (stringValue[i] != ' ')
                        break;

                // Read space-delimited values
                int startIndex = i;
                int count = 0;
                for (; i < stringValue.Length; i++)
                {
                    if (stringValue[i] == ' ')
                    {
                        count = i - startIndex;
                        if (count > 0)
                            longValue |= ReadEnumValue(stringValue, startIndex, count);
                        for (++i; i < stringValue.Length; i++)
                            if (stringValue[i] != ' ')
                                break;
                        startIndex = i;
                        if (i == stringValue.Length)
                            break;
                    }
                }
                count = i - startIndex;
                if (count > 0)
                    longValue |= ReadEnumValue(stringValue, startIndex, count);
            }
            else
            {
                if (stringValue.Length == 0)
                    throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.InvalidEnumValueOnRead, stringValue, DataContract.GetClrTypeFullName(UnderlyingType))));
                longValue = ReadEnumValue(stringValue, 0, stringValue.Length);
            }

            if (IsULong)
                return Enum.ToObject(UnderlyingType, (ulong)longValue);
            return Enum.ToObject(UnderlyingType, longValue);
        }

        long ReadEnumValue(string value, int index, int count)
        {
            for (int i = 0; i < Members.Count; i++)
            {
                string memberName = Members[i].Name;
                if (memberName.Length == count && String.CompareOrdinal(value, index, memberName, 0, count) == 0)
                {
                    return Values[i];
                }
            }
            throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(XmlObjectSerializer.CreateSerializationException(SR.GetString(SR.InvalidEnumValueOnRead, value.Substring(index, count), DataContract.GetClrTypeFullName(UnderlyingType))));
        }

        internal string GetStringFromEnumValue(long value)
        {
            if (IsULong)
                return XmlConvert.ToString((ulong)value);
            else
                return XmlConvert.ToString(value);
        }

        internal long GetEnumValueFromString(string value)
        {
            if (IsULong)
                return (long)XmlConverter.ToUInt64(value);
            else
                return XmlConverter.ToInt64(value);
        }

        internal override bool Equals(object other, Dictionary<DataContractPairKey, object> checkedContracts)
        {
            if (IsEqualOrChecked(other, checkedContracts))
                return true;

            if (base.Equals(other, null))
            {
                EnumDataContract dataContract = other as EnumDataContract;
                if (dataContract != null)
                {
                    if (Members.Count != dataContract.Members.Count || Values.Count != dataContract.Values.Count)
                        return false;
                    string[] memberNames1 = new string[Members.Count], memberNames2 = new string[Members.Count];
                    for (int i = 0; i < Members.Count; i++)
                    {
                        memberNames1[i] = Members[i].Name;
                        memberNames2[i] = dataContract.Members[i].Name;
                    }
                    Array.Sort(memberNames1);
                    Array.Sort(memberNames2);
                    for (int i = 0; i < Members.Count; i++)
                    {
                        if (memberNames1[i] != memberNames2[i])
                            return false;
                    }

                    return (IsFlags == dataContract.IsFlags);
                }
            }
            return false;
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

        public override void WriteXmlValue(XmlWriterDelegator xmlWriter, object obj, XmlObjectSerializerWriteContext context)
        {
            WriteEnumValue(xmlWriter, obj);
        }

        public override object ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
        {
            object obj = ReadEnumValue(xmlReader);
            if (context != null)
                context.AddNewObject(obj);
            return obj;
        }

    }
}