Very organized and we loved the milestone updates! We were extremely pleased with Mary, Ruoff and how quickly our loan was processed and handled. Mary is AMAZING!
What went well? Knowledgeable & professional always approachable for my questions. Everything went smoothly & worked with my time line situation. They accommodated me to help this sale.
Mary and Amanda were amazing. They made every scary or difficult aspect of my loan navigable and manageable.
You did what you said you would do. You did a great job!
Consistent communication and guidance. Mary was so very kind, welcoming, and a great sense of humor. I would send anyone to her, and will as a result. I am so glad that Mary was the person who worked with me, absolutely wonderful.


text:
Winethropology
Always Irreverent, Sometimes Profane, and Occasionally Informative
Wine Reviews, Buying Advice, and Commentary
Shipping Shock: It's For Real
Ever order wine online? If you have - or think you ever might - consider this: wine that's been jostled is subject to shipping shock.
Yes, shipping shock, the lesser known, but no less insidious cousin of bottle shock, is for real. We're not going to get into the science behind what happens to wine under duress because, frankly, it would likely bore you to tears. Moreover, this author can't really explain it other than to say that it's a real thing. Kind of like the aurora borealis - it's there, you can see it, and there is an explanation for it. Just not in this article.
Back in October a PR firm sent over a handful of samples from an Australian vintner for a virtual tasting. They arrived the day of the tasting and were, well, nasty. So nasty that only a few of the bottles were opened. Suspecting shipping shock, no reviews were published and the remainder of the bottles spent a few months relaxing in the cellar - until last night. A 2010 Chateau Tanunda Shiraz from the Barossa (one of the bottles that had been so undrinkable) was a concentrated pleasure of density and darkness - nothing like it had been in October. Nothing.
And this is not an isolated instance. Garagiste founder Jon Rimmerman, whose natural wine selections seem more vulnerable than most, dispatches a couple of missives a year imploring customers to hold off on opening their wines for a while. By casual observation, these require upwards of 6 months recovery time before being palatable. Andrew Murrray, too, is concerned enough with shipping shock that he includes notes in all shipments asking customers to restrain their enthusiasm for a couple of weeks lest they be crestfallen by lackluster quality in his wine. But this does not apply only to small production/hand-crafted wines - fans of Cameron Hughes know that he compounds bottle shock (resulting from the violence of the bottling line machinery) with shipping shock by releasing his wines sometimes within a couple of weeks following bottling - a frustrating and often disappointing experience for consumers.
Yet, there are occasional examples of wines completely resistant to abuse. The 2008 William Hill Cabernet, having arrived on a 96 degree afternoon and shortly thereafter, was sensational enough to remember several months hence. Are some varieties, like the Cabernet, less susceptible to shipping shock than others? I doubt it. Rather, I'd venture that the presence or absence of sulfites can have a pretty big impact on a wine's vulnerability, though this is surely not a single point of causality. At the end of the day, a resting period of at least a few weeks is recommended for all wines which have been transported through different time zones, wildly varying temperatures, and pressurization changes.
Please add your comment here:
Our Wine Philosophy
Reviews and Rankings
Best Wines of 2009
Wines to Pass On
Add us to your iGoogle page
Blog Archive January (2) December (4) November (3) October (4) September (5) August (2) July (5) June (5) May (5) April (5) February (3) January (5) December (2) November (4) October (1) September (2) August (3) July (2) June (4) May (1) April (2) March (4) February (3) January (1) November (5) October (5) September (2) August (3) July (1) June (4) May (3) April (4) March (4) February (5) January (1) December (2) November (4) October (5) September (1) August (4) July (4) June (2) May (5) April (2) March (4) February (1) January (5) December (4) November (3) October (6) September (6) August (1) July (5) June (4) May (4) April (5) March (4) February (3) January (5) December (6) November (5) October (5) September (6) August (5) July (6) June (8) May (7) April (7) March (7) February (7) January (9) December (6) November (7) October (7) September (6) August (1) July (6) June (6) May (10) April (6) March (5) February (5) January (4) December (6) November (8) October (7) September (5) August (8) July (9) June (8) May (8) April (7) March (9) February (6) January (7) December (9) November (8) October (6) September (8) August (10) July (11) June (16) May (15) April (8) March (9) February (7) January (17) December (10) November (12) October (12) September (13) August (16) July (13) June (14) May (12) April (18) March (19) February (13) January (16) December (15) November (18) October (9) September (2) August (2) January (13)
90+ Cellars
Brunellos Have More Fun
Cameron Hughes Wine
CellarThief
Cinderella Wine
CorkSavvy
Garagiste Wine |
HoseMaster of Wine
Last Call Wines
Louisville Juice
On the Wine Trail in Italy
The Wine Squeeze
Vineyard & Winery Management Magazine
Wine Heist
Wine Spies
WiredForWine
Woot Wine
WTSO

redpajama_set_name: RedPajamaCommonCrawl


In the process of tuning the performance of a MongoDB replica set, it's useful to be able to observe mongod directly, as opposed to inferring what it's doing by watching the output of top, for example. For that reason MongoDB comes with a utility, mongotop.
The output of mongotop indicates the amount of time the mongod process spend reading and writing to a specific collection during the update interval. I used the following command to run mongotop on an authentication enabled replica set with a two second interval.
A related performance utility is mongostat.
Before running the experiment I set the ReadPreference to nearest. As a restult I expected to see a well balanced, but asymmetrical distribution between nodes in my replica set with all hosts responding to queries. That's exactly what I saw.


text:
Sign inCRA sign in
CRA Newsroom
Enforcement notifications: compliance actions
Halifax business owner sentenced to three years in jail and he and his companies fined over $600,000 for fraud and tax evasion
The Canada Revenue Agency (CRA) announced today that Mr. Ralston MacDonnell, of Halifax, Nova Scotia, was sentenced to 3 years in jail, and fined a total of $301,511.25. MacDonnell's three related corporations were fined a total of $301,516.25. On May 18, 2021, a Halifax Provincial Court judge found MacDonnell and three of his related companies guilty of seven counts of fraud and four counts of tax evasion. In addition to the court imposed fine, MacDonnell will also have to pay the full amount of tax owing, plus related interest and any penalties assessed by the CRA.
A CRA investigation revealed that MacDonnell operated an engineering firm in Halifax, Nova Scotia, that splintered into three related companies: MacDonnell Security Risk Management Ltd., MacDonnell Group of Canada Ltd., and the numbered company 3182552 Nova Scotia Limited. From 2009 to 2014, MacDonnell and his three companies collected Goods and Services Tax/Harmonized Sales Tax (GST/HST) and Payroll Source Deductions and systematically failed to remit them to the CRA. MacDonnell made several false and deceptive statements in dealings with the CRA, which included the evasion of requirements to pay and the withholding of information. MacDonnell also used cheques knowing that they were drawn from an account that had insufficient funds. During the same period, MacDonnell diverted corporate funds into personal bank accounts unknown to the CRA, to cover personal expenses, including three mortgages, a car lease and other personal spending.
During the period from January 1, 2009, to December 31, 2014, MacDonnell and his three companies defrauded the Government of Canada by collecting and failing to remit GST/HST and payroll source deductions totalling $961,700.55.
All case-specific information above was obtained from the court records.
Tax evasion is a crime. Falsifying records and claims, wilfully not reporting income, or inflating expenses can lead to criminal charges, prosecution, jail time, and a criminal record. From April 1, 2020, to March 31, 2021, there were 36 convictions, with 15 taxpayers sent to jail for a total of 26.2 years. These individuals were sentenced for wilfully evading payment amounts totalling $10,902,950 in tax.
The CRA remains dedicated to maintaining the integrity of Canada's tax system, as well as the social and economic well-being of Canadians during these unprecedented times. The CRA continues to aggressively pursue tax evasion and false claims with all tools available to them.
The CRA is continuously working towards making sure that individuals and businesses report income earned and eligible losses, and claim benefits to which they are entitled, so that important benefit programs can be administered to those who need them. As a result of COVID-19, we are seeing the increased importance of these benefits, and are working to make sure that they continue to be available to Canadians. Any individual or business who underreports income, or claims losses or benefits to which they are not entitled, including ineligible claims for COVID-19 benefits, may have to repay the benefit amounts and may be subject to other possible action.
The CRA has set up a free subscription service to help Canadians stay current on the CRA's enforcement efforts.
Voluntary Disclosures Program
Media Relations – Regional contact
Jeffrey Lansing
jeffrey.lansing@cra-arc.gc.ca


You don't essentially own your domain name, you "lease" it. Every occasionally a business owner yearns for an annual repayment and seems to lose it. In cases like this experience is definitely an atrociously wicked teacher, so please just trust me about this: Don't register the domain 12 months at a time. Your domain name is a crucial firm asset, and needs to become treated with respect. Website name registrations are extremely inexpensive. May possibly be just no good reason never to register the domain designed for the full maximum allowable time period.
People out there desire your domain. In one chop down swoop they may steal all of the hard work get put into adding value to it. They will have got all the ability you've accumulated with the search engines like google, and they'll intercept all the targeted traffic that would have visited your website. Your domains is quite a bargain! They will be able to intercept your email. There are a lot of area squatters in existence, and one may very well have an order pending for your domains. The only way to know for sure is always to let your url expire.
A lot of people think they're protected mainly because they have a great obscure domain name. "After pretty much all, " informs me the owner of StacyHendersonMacyCPA, "What will be the odds of there being another accounting website wanting the same term? " Sadly that doesn't subject, the domain name has value to these folks even if they cannot resell it. More often than not they will use it to link to SEO clients, hence don't be amazed if they will start leading your customers to some actually sleazy sites. There are a lot of methods they can make money off your website even if they will don't re-sell it.
If the hijacker gets your name it is going to the highest bidder. If you will find no different bidders be prepared to pay $500-$1000 to obtain it back. End up being polite and professional with the squatter. Each of these bottom feeders think of themselves as entrepreneurs, and once they take over the domains they carry all the playing cards. Hijacking a website by squatting on it mainly because it expires is very legal. In the event the hijacker strolls away from the desk he's only out regarding ten cash, but you're here out your url.
Your website is going to head on down. That's just how most people realize their site has out of date, but it get's worse.
When you have set up email at your url you'll suffer a loss of the ability to give or obtain mail. Is not going to lose this kind of link to the lifeblood of your business or blog, when it's absent you're company could be crippled for several weeks.
We've pretty much all had to manage our email going down for a few hours, i really don't need to tell you how upsetting it is. Can you imagine how much a whole lot worse it would be if this went down for any whole day? Think about a whole weekend or much longer? I've found people loose access to the domain names for over a week dealing with squatters. How angry considering with yourself at the time you realize is actually all your very own fault?
Many domain names have a grace period that allows you to reclaim your domain up to 30 days after that expires. As you can imagine this is a good choice, but in which price with this level of security. If you allow your domain name run out it will cost you regarding eighty bucks to have it back.
You should not fear your renewal songyouyou.com night out, though. Running a business is a lot of work. Avoid make even more by being stingy with your domain name. You don't need to replenish your signing up every year. We ardently suggest registering your domain to get the maximum permitted ten years duration. With domain name costs being intrinsically low and registrars supplying discounts for multiple year reservations why take chances?


text:
Vanessa Redgrave's Controversial Career
May 15, 2021, 1:59 pm 197 Views
British actress, Vanessa Redgrave, is famous to American audiences for her roles in films. The Blow-Up, Murder on the Orient Express, Julia, and Howard's End.
She acclaims and celebrates actress. She receives nominations for six Oscars. First win, 13 Golden Globes – winning two, and six Emmys -winning two more.
Saying that 'she is a force to be reckoned' with on the stage and screen is putting it lightly. And you could even say that she's carrying on her family business in a way by acting.
It seems like acting is a bit of a Redgrave family tradition. Vanessa is the one that is the most applauded member of her brood. Both of her late siblings, Lynn and Corin, were actors as well. So was her daughter Natasha Richardson before she died in 2009. Vanessa's other daughter Joely Richardson has also dabbled in acting over the years.
Vanessa and her father, Michael Redgrave, receive the CBE or Commander of the Most Excellent Order of the British Empire.
Vanessa Redgrave's Vibrant Life In The Spotlight
Some might think notions of heritage and tradition sound kind of pretentious and hoitry-toity but Vanessa Redgrave embodies both beautifully. The Radgraves have some pretty deep-acting roots as well. Both of Vanessa's grandparents were also actors. Vanessa's father, Michael, and his wife Rachel Kempson are very popular actors back in their day as well.
The Redgraves are basically acting royalty you might assume that they have a very conventional try. True take on acting and living in the public light but that can't be further from the truth. In fact, the Radgraves have always shied away from embracing conformity.
Michael and Vanessa Redgrave's first husband are both bi-sexual so it isn't as welcoming for LGBT performers to be out. Vanessa gives one of the most explosive acceptance speeches in Academy Awards history.
Everything about Vanessa's life strays from the mainstream. She never let anyone else's opinions hold her back from being who she truly is. She believes in the philosophy, If people don't like what you say, then they can just deal with it.
This is who Vanessa Redgrave is and always has been.
Rubbing Elbows With Famous Friends
Vanessa was introduced to her future husband when she was still very young. Her mother was actually working with Tony Richardson as an understudy at the time. When they met, he had a profound effect on her journey of self-discovery. Previously, she is a very conservative individual but his unorthodox iconoclastic ways intrigue and delights her to no end.
As a whole new world opened up to her, she was introduced to movers and shakers like Charles Laughton, Paul Robeson, and Laurence Olivier. Famed screenwriter, Tennessee Williams, would even call Vanessa the greatest actress of our time. If that's not the hardest complement to live up to then I don't know what is.
Hey by the way. Why not take a brief moment to show us a little bit of support by giving this video a like and subscribing to our channel.
And make sure you keep watching to find out what Vanessa said in 1978 that almost destroyed her career.
Her First Lead Role Was A Huge Success
Like many other great actors that came before her, Vanessa spent most of her early career perfecting her craft on stage. She often appeared in Shakespearean plays that pushed her to excellence.
In 1961, she portrayed Rosalind in a production of As You Like It put on by the Royal Shakespeare Company. Throughout her career, she has made it a point to alternate her time back and forth on screen and on stage. The theater will always be something dear to her heart After all, she has played a lead role in over 35 productions in London's historic West End.
In 1958, Vanessa made her big-screen debut in a film called Behind The Mask which starred her father as the film's lead. She landed her first lead role in a film in 1966 in the comedy film Morgan! That performance even earned her an Oscar nomination for Best Actress. Not too shabby, for her first lead don't you think?
She Didn't Even Want To Be An Actor
Interestingly, Vanessa grew up wanting to be a dancer, not an actor. She wanted to make a career of it but it became clear very quickly that she simply was too tall for it. After she realized that her first plan wasn't going to work out, that's when she decided to try her hand out at acting instead.
In 1966 she starred in Michelangelo Antonioni's Blow-Up and just like that she was a household name. But it wasn't just Vanessa that made that film as good as it was. Blow-Up is one of those kinds of films that perfectly captures a place and time. To this day, it's still the go-to film for experiencing the vibe of what was called Swinging London.
The film that Vanessa enjoyed being a part of the most premiered in 1967. Starring in Josh Logan's musical Camelot was one of the most defining moments of her career. It's also the reason she is regarded as a national treasure back home in England.
The Post Camelot Years
Vanessa and Tony Richardson were married from 1962 to 1967. They had two children together, Natasha and Joely. While on the set of Camelot, she met an Italian actor named Franco Nero. They ended up hitting it off and had a son that they named Carlo Gabriel Redgrave Nero. She and Franco got married in 2006, almost four decades after they first met. Vanessa spent most of the 70s and the early 80s dating actor Timothy Dalton.
After Camelot, she starred in A Quiet Place In The Country alongside Nero. She'd win her second Academy Award for her portrayal of Isadora Duncan in 1968s Isadora. In 1974 she joined the all-star cast of Murder on The Orient Express.
She's Opinionated And Not Ashamed Of It
Even though she has always been in the spotlight, Vanessa has never been afraid to stray away from popular way of thinking and speak out against the various injustices that exist in our world. She was an outspoken opponent of the Vietnam War and the War in Iraq and even ran for office once as a member of the Trotskyist Workers Revolutionary Party.
In 1978, Redgrave won an Oscar for portraying the title role in the film Julia. The film is about an anti-Nazi operative in World War II. While shooting the film, she produced another film called The Palestinian which was made by two Palestinian students that Vanessa had lived with during the production of Julia.
The creation of that film would have one of the most profoundlt impacting effects on her career, but not for the reasons that she would have hoped for.
The Most Political Speech In Oscar History
She was nominated for another Academy Award, and when Vanessa got up to give her acceptance speech for her role in Julia, she made several sharp comments about what she referred to as 'Zionist hoodlums' that were attempting to suppress the film.
As soon as she uttered those words, boos and gasps erupted from the audience. It's believed that she was referring to the members of the domestic terrorist organization, the Jewish Defense League who were picketing out front of the ceremony.
The comment was shocking. Although it's clear that she was attempting to be pro-Palestinian, many in the audience interpreted her words as being anti-Semitic or anti-Israel in some kind of way. Once the news hit the newspapers the next day, her reputation was further damaged.
It was only because of her stature and glowing reputation in the film industry that she was able to continue to find success in Hollywood following that divisive speech. Although, she no-doubt missed out on several roles because of her words.
Asked in 2018 if she regretted what she said during that acceptance speech, Vanessa explained that she still believes in the words she said and that she was just doing 'doing her part' in 'what had to be done'.
She not only rubbed the Hollywood elites the wrong way with her unpopular opinions but she also ticked off the protesters that were picketing outside. The Palestinian was going to be shown at Doheny Plaza theater in LA on June 15 1976 but early that morning a bomb exploded in front of the theater. A member of the JDL was later convicted of the attack. Fortunately, the film's screening was only delayed by one day.
From 1980 To Today
It ruffled everyone's feathers once again when Vanessa was hired by CBS to play real-life nazi concentration camp survivor Fania Fenelon in the 1980 TV film Playing For Time. Apparently, even Fenelon didn't even want Redgrave to play her. Still, she won an Emmy for the part and it was one of the highest-rated programs of the year.
In the 1980s, she focused on doing TV films and high-budget mini-series but she also found time to do some theater in both New York and London. She sued the Boston Symphony Orchestra for $5 million in 1984 for breaking their contract with her prematurely over her political views.
In the 90s, she had a string of small roles in several high profile films like Howard's End, Mission: Impossible, and Cradle Will Rock. She also had a couple of leading roles in films like A Month By The Lake in 1995 and Mrs. Dalloway in 1997.'
In 2003, she finally won a Tony award for her performance in 'The Long Day's Journey into Night'. She followed that up with another Tony-nominated performance in 2007's 'The Year of Magical Thinking', and another for the 2010s 'Driving Miss Daisy'.
Vanessa is very politically involved. She donates a sizable chunk of money to causes that she beliefs in. She was elected to serve as UNICEF Goodwill Ambassador in the mid-90s and she famously declined the invitation to be made a Dame in 1999.
Redgrave almost died in 2015 when she had a massive heart attack. Later that year she revealed that her lungs are only functioning at 30 % capacity due to emphysema. These days she is living in a two-bedroom apartment in West London. Even at 84, she still has an active stage and screen presence with no indication that she has any plans on stopping anytime soon. It's very likely that she will keep acting until the day she dies.
Well, it looks like we've come to the end of another facts-packed video, but we'd love to hear from you! Which film do you think that Vanessa Redgrave shined in the brightest, Julia or Blow-Up? Let us know in the comments section below.
And before you go, make sure you take a second to give this video a like and subscribe to our channel. Tap the bell icon to turn on notifications so you can keep up with all of our upcoming videos.
Previous article Fans Want Pat Sajak Fired After Latest Backlash
Next article Sign Up with DraftKings for $500 Bonus
by Facts Verse January 28, 2023, 4:29 pm
by Facts Verse January 16, 2023, 9:22 am
Fans Want Pat Sajak Fired After Latest Backlash
Sign Up with DraftKings for $500 Bonus


text:
Q: Selecting columns in Visual Studio Code Does Visual Studio Code support selecting columns of text?
I have not yet found this feature, so I am wondering if it is hidden somewhere. I am familiar with holding down Alt while selecting text, but Visual Studio Code does not behave this way.

A: As of Visual Studio Code 1.2, they have full column selection. See Column (box) selection

A: For all you visual learners, there is (as of version at least version 1.55) a graphical menu way to turn it on and a even faster way to turn it off. Go to Selection \ Column Selection Mode to toggle this feature on or off. If  Column Selection Mode is enabled, there is a notice in the bottom VSCode status bar (circled in red in my illustration). A quick click on this notice will turn it off.

A: As none of the existing answers mention this:
The simplest way to achieve the desired result (as of April 2018 version 1.23) is to middle click and drag.

A: In Visual Studio Code version 1.0, you can now select columns by holding down Shift+Alt, then click and drag with the mouse. This can also be done using just the keyboard by holding down Ctrl+Shift+Alt and then using the arrow keys.
On latest version of vscode - 1.45.1, you can achieve same by Shift+Alt itself ( verified in May 2020)

A: For the ones who have tried to use the Alt Key + Mouse Selection, and failed.
Try to Click the menu selection as follows:
Menu bar > Selection > {Click} Switch to Ctrl+Click for Multi Cursor.
This will change the multi selection the with Ctrl key and mouse as well as enable to selection column selection with the Alt Key + Mouse Selection.

A: On a Mac, to use only the keyboard, I just had to use Cmd+Shift+Opt and then arrow keys.

A: On macOS:
Shift+Option and mouse, or
Shift+Option+Cmd and arrow keys
Screenshot:

A: I just published an extension for Visual Studio Code that converts a multi-line selection into a column selection. It mimics TextMate's Toggle Column Selection command and serves as an alternate approach to Visual Studio Code's commandoptionshift + arrow keys that I find more natural to work with.

A: I have tested this on Windows 10 Pro 1909 and Linux Mint 19.3
VSCode 1.45.1 on both OS's.
When I was holding Shift+Alt+Mouse Click it was dragging the Window around.
What might be a better explanation is this:
HOLD down LEFT mouse button anywhere in the code then press and HOLD SHIFT+ALT. With all 3 Held down drag mouse in any direction with the mouse for column select.

A: Click the somewhere at top line of the text. Select none or select some text. Hold the Shift key and click the somewhere in the following lines.

A: Sublime text has this shortcut to select columns: Ctrl + Alt + Up or         Ctrl + Alt + Down
So with just adding this extension to VSCode: Sublime Text Keymap and Settings Importer.
You can use the shortcut and done!.

redpajama_set_name: RedPajamaStackExchange


text:
Branchiomma curtum är en ringmaskart som först beskrevs av Ehlers 1901.  Branchiomma curtum ingår i släktet Branchiomma och familjen Sabellidae.

Artens utbredningsområde är havet kring Nya Zeeland. Inga underarter finns listade i Catalogue of Life.

Källor

Havsborstmaskar
curtum

redpajama_set_name: RedPajamaWikipedia


text:
Q: X-Forwarded-Host vs. x-Forwarded-Server What is the difference between the following headers?

*

*X-Forwarded-Host

*X-Forwarded-Server

In a setup with Apache being the proxy and Tomcat the origin server I see both of them in the HTTP requests that reach Tomcat. Values were (this is from my own code logging the header name and value pairs with the actual capitalization I encountered)
x-forwarded-host some-server
x-forwarded-server some-server.dept.some-uni.edu

Are the above values typical? Which of the two should I use to reliably reconstruct the URL asked by the browser? In my case, the browser sent a GET with the some-server.dept.some-uni.edu value in the request URL which leads me to think that the x-forwarded-server is more relevant to reconstruct the URL. I find this somewhat at odds with the MDN documentation only mentioning X-Forwarded-Host and stating that this is the "de-facto standard header for identifying the original host requested by the client" (and containing no documentation on X-Forwarded-Server)
This Apache page OTOH describes both headers as follows:

*

*X-Forwarded-Host The original host requested by the client in the
Host HTTP request header.

*X-Forwarded-Server The hostname of the
proxy server.

(I appreciate that to reconstruct the URL I also need X-Forwarded-Proto and X-Forwarded-Port)

A: Since there might be multiple proxies involved in resolving a connection the X-Forwarded-Host-Header is the one you should use in the service-application.
The header X-Forwarded-Server gets overwritten by each proxy, which is involved in the communication, with the current proxy's hostname.


alaTest har samlet og analyseret 3829 anmeldelser fra magasiner og hjemmesider. Anmeldere kan virkelig godt lide størrelsen. Også brugervenligheden imponerer, men muligheden for at medtage værdsættes ikke af folk.
Vi analyserede bruger- og ekspertratings, produktalder og andre faktorer. Sammenlignet med andre Spillekonsoller får Microsoft Xbox 360 Pro en samlet alaScore™ på 90/100 = Fremragende kvalitet.
Some unsupported file formats, No HD-DVD drive, no non-MSC support, average launch line up.
The Xbox 360 is an incredible piece of hardware with very little great software to choose from. In the end, the potential for future brilliance far outweighs its immediate appeal.
Xbox Live content is second to none. Easy to use. As games consoles go, it's a bit of a looker.
Hardware isn't awesome. Wi-Fi not built-in. No upscaling on DVDs.
Original Xbox Game Support lets you play a range of classic Xbox games titles on your Xbox 360. (Hard Disk Drive required, not all games are backward compatible).
New Xbox 360 review: Worth the upgrade?
The new Xbox 360 looks lovely, there's no arguing with that, but if you own one already is there much point in upgrading? Read our Xbox 360 review: Worth the upgrade? And we'll spell out the pros and cons of jumping to Microsoft's smaller, quieter Xbox.
Keep the party going with Lips: Number One Hits, the latest addition to the Lips franchise exclusively for Xbox 360. Lips: Number One Hits offers hit songs that have graced the Number 1 spot on major worldwide charts, including Coldplay's "Viva La Vida," Rihanna's "Disturbia," MC Hammer's "U Can't Touch This," "Apologize" by Timbaland featuring OneRepublic and Culture Club's "Karma Chameleon." These hits join the rich library of tunes already available, and with even more genre-spanning songs releasing regularly on Xbox LIVE, emulating your favorite singer has never been easier.
The Xbox 360 wireless microphone included with Lips is compatible with top third-party music titles releasing this fall, cementing Lips as the ultimate spontaneous singing party-starter.
Keiichi Yano, the celebrated developer behind some of the industry's most beloved rhythm games, continues to bring his vision of collaborative and social musical entertainment to the Lips franchise. Bundled with the interactive wireless motion sensitive microphone that helps you rock all night long, Lips: Number One Hits encourages you to join in the singing party with your friends and family.


Birr agrees that there can be too many coaches on a system, if there aren't good practices involved in the use of the system.
We didn't get the rub of the green against Birr last year," agrees Elliott.
A well-worked goal by Joey O'Connor, helped the victors into a 1-8 to 0-5 interval lead but a tally of 12 first half wides left the door open for Birr.
The Minister has added that the USAID has supported the project with 40 million Birr in assistance.
Well, his buddies in school and on the field know the real Jon Birr, but the only thing the opposition sees is a mammoth offensive and defensive tackle who takes pride in dominating his opponent from the first play of the game to the final gun.
Offaly outfit Birr are on the trail of a record fifth All- Ireland club title - and are aiming to make Dublin champions Chiarain their next scalp at Parnell Park (2.
He aims to bring the price of apples on the local market down to between Birr 2 to Birr 4 per kilo.
There is a romantic notion that Offaly's results and performances would be considerably better in Birr, though the team's struggles against what was effectively a third-string Kilkenny team there in the Walsh Cup in January suggest that it's wide of the mark.
For Whelahan and his Birr team-mates the good life is just two hours away as the club faces up to the might of Athenry in this afternoon's All-Ireland Club Hurling Championship semi-final clash in Ennis (2.
Premiums rose from Birr 14,000 in 1991 to Birr 367,000 in 1995.
3 million Birr, which it achieved despite the exclusion of written premium from life insurance calculated every three years, which has grown by 14 percent.
2 billion birr annual budget that mainly targeted on the alleviation of poverty and development.


text:
Auguste Keufer (Sainte-Marie-aux-Mines,  - Paris, ) est un syndicaliste français. Ouvrier du Livre, il est considéré comme l'un des militants le plus importants du mouvement ouvrier français.

Biographie
Orphelin, ayant connu la pauvreté, Auguste Keufer apprend le métier de typographe chez l'imprimeur du Haut-Rhin Jardel. Après l'annexion de l'Alsace, optant pour la France, il quitte sa ville natale et « monte » à Paris à la fin de l'année 1871. Cette origine alsacienne explique sans doute son ralliement immédiat à la politique d'Union sacrée contre l'Allemagne en 1914.

Le père fondateur de la Fédération du Livre CGT
Compositeur-typographe il adhère au syndicat en 1872. Il s'affiche comme l'apôtre de l'entraide et de la solidarité au sein de la Fédération française du syndicat du livre (FFSL), créée en 1882, et devient président de la Fédération française des travailleurs du Livre (FFTL) entre 1882 et 1883, puis secrétaire général de décembre 1884 à janvier 1920. Cette fédération adhérente à la CGT dès la fondation de celle-ci (1895) change de statut à la suite du Congrès de Bourbannes en 1886 ; elle est toujours présente dans le paysage syndical français : le , à la suite de la fusion de la Fédération des travailleurs du livre et de la Fédération des travailleurs des Industries papetières, elle prend le nom de FILPAC-CGT. Durant le mandat de Keufer à la tête de cette Fédération, long de trente-huit ans, le nombre de sections syndicales passe de 62 en 1884 à 230 en 1920 et le nombre des syndiqués passe pour la même période de 6 000 à 22 000<ref>Notice "Keufer", Dictionnaire biographique du mouvement ouvrier français, déjà cité.</ref>.

 Un des créateurs de la CGT
Présent au Congrès de Limoges en , Auguste Keufer est l'un des fondateurs de la CGT. Il en est le premier trésorier. Il occupe cette fonction de 1895 à 1897. Il est également membre du Parti socialiste. Cependant, présent à Amiens, lors du congrès de la CGT de 1906, il vote la  Charte d'Amiens, comme l'ensemble de la Fédération du Livre et de ceux qu'on nomme réformistes.

 Tenant du « réformisme » dans le mouvement syndical
Disciple d'Auguste Comte, il adopte le positivisme religieux, et est président du cercle des prolétaires positivistes en 1880. Homme influent, autodidacte et membre de la Société des Universités populaires, il ne cesse de répéter que le prolétariat doit s'astreindre à une éducation intellectuelle, morale et civile.

Il est l'auteur de nombreux ouvrages et rapports sur la vie et la condition ouvrière et syndicale, notamment sur le droit de grève.

 Hommages
À sa mort, deux mille personnes assistent à ses funérailles grandioses. Son nom a été attribué à une place à Sainte-Marie-aux-Mines, et à Saint-Étienne, une école bordelaise, et à la rue Keufer dans le  de Paris.

 Notes et références

 Sources
 Keufer, Auguste (1851-1924), pelloutier.net (consulté le 13-02-2007)

 Voir aussi
 Bibliographie
 Léon Strauss, « Auguste Keufer », in Nouveau dictionnaire de biographie alsacienne, vol. 20, p. 1943
 Léon Tinelli, Les travailleurs du livre dans le mouvement ouvrier, Syndicat du livre de Mulhouse - Cent années de "Livre" à Mulhouse'', 170 pages, Le livre, Mulhouse, 1981

Liens externes

Syndicaliste français du XIXe siècle
Syndicaliste de la CGT
Naissance en avril 1851
Naissance à Sainte-Marie-aux-Mines
Décès en mars 1924
Décès dans le 14e arrondissement de Paris
Décès à 72 ans


text:
Matt Derenbecker headed back to Louisiana, transferring to New Orleans
By David HartenJul 29, 2013, 8:10 PM EDT
Matt Derenbecker is headed home. Again
The former LSU and Dayton forward will reportedly transfer to New Orleans, weeks after announcing he was leaving the Flyers' program. He will apply for a waiver to be eligible immediately.
Derenbecker's college career has logged him a lot of miles. The Metairie, La. native started 16 games as a freshman at LSU and averaged 6.5 points and 2.1 rebounds before deciding to leave the program, spending some time away from basketball to "address some personal matters" . That decision ultimately took him to Dayton, where after sitting out a season, the 6-7, 185-pounder averaged 4.5 points and 1.1 rebounds in 13.6 minutes per game in 2012-13.
Though his one season in a Dayton uniform will mainly be remembered for this.
Now, he's had a change of heart, again, and Derenbecker now wishes to be closer to home. So he's signing with the Privateers, his third team in three eligible seasons.
"Either way, we're excited to have Matt join our program," New Orleans coach Mark Slessinger told The Baton Rouge Advocate. "He fills a need for us and I know he's going to be happy to be playing close to home again."
In a way, Derenbecker and the Privateers are a perfect fit. The Privateers, like Derenbecker, have had a whirlwind few years, initially electing to make the move from Division I to Division III after the school was decimated financially by Hurricane Katrina. That never happened, as the school is now back on its feet and has been an independent for the last few years. New Orleans will enter their first season in the Southland Conference in 2013-14.
If he gets the waiver, Derenbecker will have two seasons of eligibility remaining. If not, he'll sit out the 2013-14 season, losing his redshirt junior year, and be eligible as a fifth-year senior in 2014-15.
New Orleans went 8-18 in their first season back as a Division I team, spending one season as a mercenary with the nomadic Great West Conference, in 2012-13. The Privateers lost only two seniors off last year's squad, but they were their top-two scorers in Rarlensee Nelson and Lovell Cook. The Privateers return the likes of Cory Dixon (8.7 points, 5.1 rebounds per game) next season.
Follow David Harten on Twitter at @David_Harten


A flooring buffer or rotary floor machine is an electrical flooring scrubber that's used to wash and maintain non-carpeted floors, akin to hardwood, marble, tile or linoleum. Typically, a big ground costs more to shine than a small floor in the identical situation. Acid-etched stains penetrate the floor of the concrete to create translucent earth tones that mimic the marbling of tanned leather-based, wooden or marble. This versatility makes polished concrete an ideal flooring materials for a variety of applications.
Polished Concrete Solutions has all kinds of concrete grinders and accessories for your concrete wants at one of the best prices. Simply take away furnishings and rugs, then sweep, vacuum or mud mop your flooring, and provides it a wet cleaning with Bona Hardwood Ground Cleaner.
Because polishing is a multistep course of, you may choose the level of sheen - from satin to high-gloss - that meets your maintenance and aesthetic requirements. Dalworth Clean's residential and business wood floor cleaning and renewal companies are second to none.
Tough surfaces require extra grinding than smoother surfaces, and repeating the process several occasions increases the price of your complete venture. Check to see if you need to sand and wax your flooring earlier than you polish them. Can all Concrete be Polished? One Karcher machine is capable of floor polishing, scrubbing, and stripping on your whole industrial cleaning operation on all kinds of surfaces.
Circumstances stone and concrete floors for last polishing. Then squirt Bona Polish onto the floor, spread it with an applicator and permit it to dry. For top-high quality concrete ground sharpening providers, learn about what ICS can do for you. Ensure that the floor is completely dry earlier than making use of the polish.
Permit the ground to utterly dry before you apply the wax. Even if you recognize what sort of finish your floor has, it is best to take a look at the polish to ensure it won't discolor the wood. Click a content kind to see the sorts of filters out there within it. Most filters have many criteria you possibly can choose from, which change depending on your search term.
If you have any questions relating to where and how you can utilize floor polishing machine malaysia [http://www.lacartes.com], you could call us at the web-page.


Four Creative Directors in America got rumbled recently – but in a really smart way.
New York creative Alec Brownstein turned the guilty pleasure of Googling your own name on its head.
Brownstein, a copywriter, created an online ad campaign for only $6 that would appear every time a selection of New York creative directors searched for their own name on Google.
Brownstein, who is now a senior copywriter at Y&R, said he wanted to invade the "secret egotistical moment" when the creative directors were at their most vulnerable.
Next Scamp's back; this time he's in print.


Wolff Heintschel von Heinegg: Legal Implications of Territorial Sovereignty in Cyberspace. In: C. Czosseck, R. Otis, K. Ziolkowski (Ed.): 4th International Conference on Cyber Conflict Proceedings. Tallinn: NATO CCD COE Publications 2012, S. 7-19.


text:
package couch

import (
	"bytes"
	"encoding/base64"
	"encoding/json"
	"errors"
	"io"
	"io/ioutil"
	"net/http"
	"net/url"
	"reflect"
	"strings"
	"testing"
)

func tGetCreds(r *http.Request) (string, string) {
	ah := r.Header.Get("Authorization")
	if ah == "" {
		return "", ""
	}
	parts := strings.Fields(ah)
	if len(parts) < 2 {
		return "", ""
	}
	dec, err := base64.StdEncoding.DecodeString(parts[1])
	if err != nil {
		return "", ""
	}
	parts = strings.SplitN(string(dec), ":", 2)
	if len(parts) != 2 {
		return "", ""
	}
	return parts[0], parts[1]
}

func TestReqGen(t *testing.T) {
	tests := []struct {
		in         string
		user, pass string
		fails      bool
	}{
		{"http://localhost:5984/%", "", "", true},
		{"http://localhost:5984/", "", "", false},
		{"http://me:secret@localhost:5984/", "me", "secret", false},
	}

	for _, test := range tests {
		req, err := createReq(test.in)
		switch {
		case err == nil && !test.fails:
			u, p := tGetCreds(req)
			if u != test.user || p != test.pass {
				t.Errorf("Expected user=%q, pass=%q, got %q/%q",
					test.user, test.pass, u, p)
			}
		case err == nil && test.fails:
			t.Errorf("Expected failure on %q, got %v", test.in, req)
		case err != nil && !test.fails:
			t.Errorf("Unexpected failure on %q: %v", test.in, err)
		}
	}
}

type mocktrip struct {
	expurl string
	res    []byte
	rc     int
	hdrs   http.Header
}

func (m *mocktrip) RoundTrip(req *http.Request) (*http.Response, error) {
	if m.expurl != req.URL.String() {
		return nil, errors.New("Incorrect url: " + req.URL.String())
	}
	m.hdrs = req.Header
	return &http.Response{
		Body:       ioutil.NopCloser(bytes.NewReader(m.res)),
		Status:     "200 OK",
		StatusCode: m.rc,
	}, nil
}

func installClient(c *http.Client) {
	HTTPClient = c
}

func TestUnmarshalURLGolden(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 200, nil}

	installClient(&http.Client{Transport: &m})

	idr := idAndRev{}
	err := unmarshalURL(u, &idr)
	if err != nil {
		t.Fatalf("Error unmarshaling: %v", err)
	}

	if idr.ID != "theid" || idr.Rev != "therev" {
		t.Fatalf("Expected theid/therev, got %v", idr)
	}
}

func TestUnmarshURLError(t *testing.T) {
	err := unmarshalURL("http://%", nil)
	if err == nil {
		t.Fatalf("Successfully unmarshalled from nothing?")
	} else if !strings.Contains(err.Error(), "hexadecimal escape") {
		t.Fatalf("Unexpected error: %q", err.Error())
	}
}

func TestUnmarshSchemeError(t *testing.T) {
	err := unmarshalURL("mailto:dustin@arpa.in", nil)
	if err == nil {
		t.Fatalf("Successfully unmarshalled from nothing?")
	} else if !strings.Contains(err.Error(), "unsupported protocol") {
		t.Fatalf("Unexpected error: %q", err.Error())
	}
}

func TestInteractGolden(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 200, nil}

	installClient(&http.Client{Transport: &m})

	idr := idAndRev{}
	n, err := interact("POST", u, map[string][]string{"X-What": []string{"a"}},
		[]byte{'{', '}'}, &idr)
	if n != 200 || err != nil {
		t.Fatalf("Error unmarshaling: %v/%v", n, err)
	}

	if m.hdrs.Get("Content-Type") != "application/json" {
		t.Errorf("Expected JSON header, got %q", m.hdrs.Get("Content-Type"))
	}
	if m.hdrs.Get("X-What") != "a" {
		t.Errorf("Expected custom header, got %q\n%v", m.hdrs.Get("X-What"), m.hdrs)
	}

	if idr.ID != "theid" || idr.Rev != "therev" {
		t.Fatalf("Expected theid/therev, got %v", idr)
	}
}

func TestInteractBadResp(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 419, nil}

	installClient(&http.Client{Transport: &m})

	idr := idAndRev{}
	n, err := interact("POST", u, map[string][]string{}, []byte{'{', '}'}, &idr)
	if n != 419 || err == nil {
		t.Fatalf("Expected error 419, got: %v/%v", n, err)
	}
}

func TestInteractError(t *testing.T) {
	_, err := interact("POST", "http://%", map[string][]string{}, nil, nil)
	if err == nil {
		t.Fatalf("Successfully interacted with nothing?")
	} else if !strings.Contains(err.Error(), "hexadecimal escape") {
		t.Fatalf("Unexpected error: %q", err.Error())
	}
}

func TestInteractSchemeError(t *testing.T) {
	_, err := interact("POST", "mailto:dustin@arpa.in", map[string][]string{}, nil, nil)
	if err == nil {
		t.Fatalf("Successfully interacted with nothing?")
	} else if !strings.Contains(err.Error(), "unsupported protocol") {
		t.Fatalf("Unexpected error: %q", err.Error())
	}
}

type fakeHTTP struct {
	responses []http.Response
}

func (f *fakeHTTP) RoundTrip(*http.Request) (*http.Response, error) {
	if len(f.responses) == 0 {
		return &http.Response{
			Status:     "Server Error",
			StatusCode: 500,
			Body:       ioutil.NopCloser(&bytes.Buffer{}),
		}, nil
	}
	p := http.Response(f.responses[0])
	f.responses = f.responses[1:]
	return &p, nil
}

func installFakeHTTP(f *fakeHTTP) *http.Client {
	rv := HTTPClient
	HTTPClient = &http.Client{Transport: f}
	return rv
}

func uninstallFakeHTTP(h *http.Client) {
	HTTPClient = h
}

func oneFake(r http.Response) *fakeHTTP {
	return &fakeHTTP{[]http.Response{r}}
}

func TestUnmarshalBadReq(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 404,
		Status:     "404 four-oh-four",
		Body:       ioutil.NopCloser(&bytes.Buffer{}),
	})))

	err := unmarshalURL("http://www.example.com/", nil)
	if err == nil {
		t.Fatalf("Successfully got example?")
	} else if !strings.Contains(err.Error(), "four-oh-four") {
		t.Fatalf("Unexpected error: %q", err.Error())
	}
}

func TestRunningSuccess(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"version":"CouchDB"}`)),
	})))
	d := Database{}
	if !d.Running() {
		t.Fatalf("Expected DB to be considered running.  Wasn't.")
	}
}

func TestRunningEmpty(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{}`)),
	})))
	d := Database{}
	if d.Running() {
		t.Fatalf("Expected DB to be considered not running.  Was.")
	}
}

func TestDBExists(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "x"}`)),
	})))
	d := Database{Name: "x"}
	if !d.Exists() {
		t.Errorf("Expected DB to exist.  Didn't.")
	}

	installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "y"}`)),
	}))
	if d.Exists() {
		t.Errorf("Expected DB to not exist.  Did.")
	}

	installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "`)),
	}))
	if d.Exists() {
		t.Errorf("Expected DB to not exist.  Did.")
	}
}

func TestRunningError(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`[`)),
	})))
	d := Database{}
	if d.Running() {
		t.Fatalf("Expected DB to be considered not running.  Was.")
	}
}

func TestSimpleOpFail(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 500,
		Status:     "five hundred",
		Body:       ioutil.NopCloser(strings.NewReader(`{"ok": false}`)),
	})))
	d := Database{}
	err := d.simpleOp("PUT", "/x", io.EOF)
	if !strings.Contains(err.Error(), "five hundred") {
		t.Fatalf("Expected error, got %v", err)
	}
}

func TestSimpleOpNotOK(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"ok": false}`)),
	})))
	d := Database{}
	if err := d.simpleOp("PUT", "/x", io.EOF); err != io.EOF {
		t.Fatalf("Expected error, got %v", err)
	}
}

func TestSimpleOpOK(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"ok": true}`)),
	})))
	d := Database{}
	if err := d.simpleOp("PUT", "/x", io.EOF); err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}
}

func TestCreateDB(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"ok": true}`)),
	})))
	d := Database{}
	if err := d.createDatabase(); err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}
}

func TestDeleteDB(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"ok": true}`)),
	})))
	d := Database{}
	if err := d.DeleteDatabase(); err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}
}

func TestURLs(t *testing.T) {
	tests := []struct {
		db  Database
		exp string
	}{
		{Database{"https", "locohost", "5984", "dbx", nil,
			nil, defaultChangeDelay},
			"https://locohost:5984/dbx"},
		{Database{"http", "locohost", "5984", "dbx", url.UserPassword("a", "b"),
			nil, defaultChangeDelay},
			"http://a:b@locohost:5984/dbx"},
	}
	for _, test := range tests {
		if test.db.DBURL() != test.exp {
			t.Errorf("Error on %v, expected %v, got %v",
				test.db, test.exp, test.db.DBURL())
		}
	}
}

func TestMust(t *testing.T) {
	must(nil) // no panic
	panicked := false
	func() {
		defer func() { panicked = recover() != nil }()
		must(io.EOF)
	}()
	if !panicked {
		t.Fatalf("Expected a panic, but didn't get one")
	}
}

func TestCleanJSON(t *testing.T) {
	j, id, rev, err := cleanJSON(struct {
		Key string
		ID  string `json:"_id"`
		Rev string `json:"_rev"`
	}{"aqui", "aid", "arev"})
	m := map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct literal parsing: %v", err)
	}
	if id != "aid" {
		t.Errorf(`Expected id="aid", got %q`, id)
	}
	if rev != "arev" {
		t.Errorf(`Expected rev="arev", got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}

	j, id, rev, err = cleanJSON(map[string]string{
		"Key":  "anotherkey",
		"_id":  "mid",
		"_rev": "mrev"})

	m = map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct map parsing: %v", err)
	}
	if id != "mid" {
		t.Errorf(`Expected id="mid", got %q`, id)
	}
	if rev != "mrev" {
		t.Errorf(`Expected rev="mrev", got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}
}

func TestCleanJSONNoRev(t *testing.T) {
	j, id, rev, err := cleanJSON(map[string]string{
		"Key": "third",
		"_id": "timid"})

	m := map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct map parsing: %v", err)
	}
	if id != "timid" {
		t.Errorf(`Expected id="timid", got %q`, id)
	}
	if rev != "" {
		t.Errorf(`Expected empty rev, got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}

}

func TestCleanJSONNonStringID(t *testing.T) {
	j, id, rev, err := cleanJSON(map[string]interface{}{
		"Key": "third",
		"_id": 3.141592})

	m := map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct map parsing: %v", err)
	}
	if id != "" {
		t.Errorf(`Expected empty id, got %q`, id)
	}
	if rev != "" {
		t.Errorf(`Expected empty rev, got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}

}

func TestCleanJSONNonStringRev(t *testing.T) {
	j, id, rev, err := cleanJSON(map[string]interface{}{
		"Key":  "third",
		"_rev": 3.141592})

	m := map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct map parsing: %v", err)
	}
	if id != "" {
		t.Errorf(`Expected empty id, got %q`, id)
	}
	if rev != "" {
		t.Errorf(`Expected empty rev, got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}

}

func TestCleanJSONNoId(t *testing.T) {
	j, id, rev, err := cleanJSON(map[string]string{
		"Key":  "third",
		"_rev": "theengine"})

	m := map[string]interface{}{}
	err = json.Unmarshal(j, &m)
	if err != nil {
		t.Fatalf("Error in struct map parsing: %v", err)
	}
	if id != "" {
		t.Errorf(`Expected id="", got %q`, id)
	}
	if rev != "theengine" {
		t.Errorf(`Expected rev="theengine", got %q`, rev)
	}
	if len(m) != 1 {
		t.Errorf("Expected one key, got %v", m)
	}

}

func TestCleanJSONError(t *testing.T) {
	// error
	j, id, rev, err := cleanJSON(make(chan bool))
	if err == nil {
		t.Errorf("Expected error encoding chan, got %s (id=%v, rev=%v)",
			j, id, rev)
	}
}

func TestBulk(t *testing.T) {
	hres := `[{"ok": true, "id": "d1"},{"ok": true, "id": "d2"}]`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	docs := []interface{}{
		map[string]string{"k": "v"},
		map[string]string{"k2": "v2"},
	}
	res, err := d.Bulk(docs)
	if err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}

	exp := []Response{
		Response{Ok: true, ID: "d1"},
		Response{Ok: true, ID: "d2"},
	}

	if !reflect.DeepEqual(exp, res) {
		t.Errorf("Expected %v, got %v", exp, res)
	}
}

func TestBulkBadInput(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: -1,
		Body:       ioutil.NopCloser(&bytes.Buffer{}),
	})))
	d := Database{}
	docs := []interface{}{make(chan bool)}
	res, err := d.Bulk(docs)
	if err == nil {
		t.Fatalf("Expected error, got %v", res)
	}
}

func TestPrivateInsertError(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 419, nil}

	installClient(&http.Client{Transport: &m})

	d := Database{}
	id, rev, err := d.insert(nil)
	if err == nil {
		t.Fatalf("Expected error 419, got: %v/%v/%v", id, rev, err)
	}
}

func TestPrivateInsertNotOK(t *testing.T) {
	hres := `{"ok": false, "error": "Broken", "reason": "Because"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	id, res, err := d.insert(nil)
	if err == nil {
		t.Fatalf("Expected error, got %v/%v", id, res)
	}
}

func TestPrivateInsertOK(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	id, rev, err := d.insert(nil)
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %v`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %v`, rev)
	}

}

func TestPrivateInsertWithError(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 419, nil}

	installClient(&http.Client{Transport: &m})

	d := Database{}
	id, rev, err := d.insertWith(nil, "x")
	if err == nil {
		t.Fatalf("Expected error 419, got: %v/%v/%v", id, rev, err)
	}
}

func TestPrivateInsertWithNotOK(t *testing.T) {
	hres := `{"ok": false, "error": "Broken", "reason": "Because"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	id, res, err := d.insertWith(nil, "x")
	if err == nil {
		t.Fatalf("Expected error, got %v/%v", id, res)
	}
}

func TestPrivateInsertWithOK(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	id, rev, err := d.insertWith(nil, "x")
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %v`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %v`, rev)
	}
}

func TestRetrieveInvalid(t *testing.T) {
	d := Database{}
	err := d.Retrieve("", nil)
	if err != errNoID {
		t.Fatalf("Expected 'no ID' error, got %v", err)
	}
}

func TestRetrieveValid(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:5984/thing/ob"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev", "val": "EX"}`), 200, nil}

	installClient(&http.Client{Transport: &m})

	s := struct{ Val string }{}
	d := Database{Host: "localhost", Port: "5984", Name: "thing"}
	err := d.Retrieve("ob", &s)
	if err != nil {
		t.Fatalf("Error unmarshaling: %v", err)
	}

	if s.Val != "EX" {
		t.Fatalf("Expected EX, got %v", s.Val)
	}
}

func TestInsertBadOb(t *testing.T) {
	d := Database{}
	id, rev, err := d.Insert(make(chan bool))
	if err == nil {
		t.Fatalf("Unexpected success on bad obj: %v/%v", id, rev)
	}
}

func TestInsertNew(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))

	d := Database{}
	id, rev, err := d.Insert(map[string]interface{}{})
	if err != nil {
		t.Fatalf("Errored: %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %q`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %q`, id)
	}
}

func TestInsertWith(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))

	d := Database{}
	id, rev, err := d.Insert(map[string]interface{}{"_id": "one"})
	if err != nil {
		t.Fatalf("Errored: %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %q`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %q`, id)
	}
}

func TestInsertWithBadInput(t *testing.T) {
	d := Database{}
	id, rev, err := d.InsertWith(make(chan bool), "x")
	if err == nil {
		t.Errorf("Unexpected success: %v/%v", id, rev)
	}
}

// This is confusing, but there's Insert as insertWith and lower
// insertWith and public InsertWith
func TestInsertWith2(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))

	d := Database{}
	id, rev, err := d.InsertWith(map[string]interface{}{}, "one")
	if err != nil {
		t.Fatalf("Errored: %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %q`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %q`, id)
	}
}

func TestInsertWithRev(t *testing.T) {
	hres := `{"ok": true, "id": "one", "rev": "11"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))

	d := Database{}
	id, rev, err := d.Insert(map[string]interface{}{"_id": "one",
		"_rev": "10"})
	if err != nil {
		t.Fatalf("Errored: %v", err)
	}
	if id != "one" {
		t.Errorf(`Expected id="one", got %q`, id)
	}
	if rev != "11" {
		t.Errorf(`Expected rev="11", got %q`, id)
	}
}

func TestDBInfo(t *testing.T) {
	hres := `{"db_name": "testdb", "doc_count": 38515}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))

	d := Database{}
	info, err := d.GetInfo()
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
	if info.Name != "testdb" {
		t.Errorf(`Expected name="testdb", got %q`, info.Name)
	}
	if info.DocCount != 38515 {
		t.Errorf(`Expected count=38515, got %q`, info.DocCount)
	}
}

func TestDeleteError(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 419, nil}

	installClient(&http.Client{Transport: &m})

	d := Database{}
	id, rev, err := d.insert(nil)
	if err == nil {
		t.Fatalf("Expected error 419, got: %v/%v/%v", id, rev, err)
	}
}

func TestDeleteNotOK(t *testing.T) {
	hres := `{"ok": false, "error": "Broken", "reason": "Because"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	id, res, err := d.insert(nil)
	if err == nil {
		t.Fatalf("Expected error, got %v/%v", id, res)
	}
}

func TestDeleteWithError(t *testing.T) {
	defer installClient(http.DefaultClient)

	u := "http://localhost:8654/thing"
	m := mocktrip{u, []byte(`{"_id": "theid", "_rev": "therev"}`), 419, nil}

	installClient(&http.Client{Transport: &m})

	d := Database{}
	err := d.Delete("x", "11")
	if err == nil {
		t.Fatalf("Expected error 419, got success")
	}
}

func TestDeleteWithNotOK(t *testing.T) {
	hres := `{"ok": false, "error": "Broken", "reason": "Because"}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	err := d.Delete("x", "11")
	if err == nil {
		t.Fatalf("Expected error")
	}
}

func TestDeleteWithOK(t *testing.T) {
	hres := `{"ok": true}`
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(hres)),
	})))
	d := Database{}
	err := d.Delete("x", "11")
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
}

func TestNewDBNotRunning(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`[`)),
	})))
	db, err := NewDatabase("localhost", "5984", "db")
	if err == nil {
		t.Fatalf("Expected failure, got %v", db)
	}
}

func TestNewDBCreateFail(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`["x"]`)),
			},
		},
	}))
	db, err := NewDatabase("localhost", "5984", "db")
	if err == nil {
		t.Fatalf("Expected failure, got %v", db)
	}
}

func TestNewDBCreateExists(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"version":"CouchDB"}`)),
			},
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "db"}`)),
			},
		},
	}))
	_, err := NewDatabase("localhost", "5984", "db")
	if err != nil {
		t.Fatalf("Expected succcess, got %v", err)
	}
}

func TestNewDBCreateSuccess(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"version":"CouchDB"}`)),
			},
			http.Response{
				StatusCode: 404,
				Body:       ioutil.NopCloser(strings.NewReader(``)),
			},
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"ok": true}`)),
			},
		},
	}))
	_, err := NewDatabase("localhost", "5984", "db")
	if err != nil {
		t.Fatalf("Expected succcess, got %v", err)
	}
}

func TestEditBadOb(t *testing.T) {
	d := Database{}
	id, err := d.Edit(make(chan bool))
	if err == nil {
		t.Fatalf("Expected error on bad input, got %v", id)
	}
}

func TestEditNoID(t *testing.T) {
	d := Database{}
	id, err := d.Edit(map[string]interface{}{})
	if err != errNoID {
		t.Fatalf("Expected no ID err on bad input, got %v/%v", err, id)
	}
}

func TestEditNoRev(t *testing.T) {
	d := Database{}
	id, err := d.Edit(map[string]interface{}{"_id": "theid"})
	if err != errNoRev {
		t.Fatalf("Expected no rev error on bad input, got %v/%v", err, id)
	}
}

func TestEditHTTPFail(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 500,
		Body:       ioutil.NopCloser(strings.NewReader(``)),
	})))

	d := Database{}
	id, err := d.Edit(map[string]interface{}{"_id": "theid", "_rev": "84"})
	if err == nil {
		t.Fatalf("Expected http error, got %v", id)
	}
}

func TestEditHTTPSuccess(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"rev": "85"}`)),
	})))

	d := Database{}
	id, err := d.Edit(map[string]interface{}{"_id": "theid", "_rev": "84"})
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
	if id != "85" {
		t.Fatalf(`Expected rev="85", got %q`, id)
	}
}

func TestEditWithNoID(t *testing.T) {
	d := Database{}
	id, err := d.EditWith(map[string]interface{}{}, "", "r")
	if err != errNoID {
		t.Fatalf("Expected no ID err on bad input, got %v/%v", err, id)
	}
}

func TestEditWithNoRev(t *testing.T) {
	d := Database{}
	id, err := d.EditWith(map[string]interface{}{}, "x", "")
	if err != errNoRev {
		t.Fatalf("Expected no rev error on bad input, got %v/%v", err, id)
	}
}

func TestEditWithBadInput(t *testing.T) {
	d := Database{}
	id, err := d.EditWith(make(chan bool), "a", "3")
	if err == nil {
		t.Fatalf("Expected error with bad input, got %v", id)
	}
}

func TestEditWithHTTPSuccess(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(oneFake(http.Response{
		StatusCode: 200,
		Body:       ioutil.NopCloser(strings.NewReader(`{"rev": "85"}`)),
	})))

	d := Database{}
	id, err := d.EditWith(map[string]interface{}{}, "x", "84")
	if err != nil {
		t.Fatalf("Expected success, got %v", err)
	}
	if id != "85" {
		t.Fatalf(`Expected rev="85", got %q`, id)
	}
}

func TestConnectBadURL(t *testing.T) {
	d, err := Connect("http://%")
	if err == nil {
		t.Fatalf("Expected error connecting with bad URL, got %v", d)
	}
}

func TestConnectNotRunning(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{}))
	db, err := Connect("http://localhost:5984/")
	if err != errNotRunning {
		t.Fatalf("Expected error with bad connection, got %v/%v", db, err)
	}
}

func TestConnectNoDB(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`["db"]`)),
			},
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`[]`)),
			},
		},
	}))

	db, err := Connect("http://localhost:5984/db")
	if err == nil {
		t.Fatalf("Expected error with no db, got %v", db)
	}
}

func TestConnectSuccess(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"version":"CouchDB"}`)),
			},
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "db"}`)),
			},
		},
	}))

	db, err := Connect("http://localhost:5984/db")
	if err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}
	if db.Port != "5984" {
		t.Fatalf("Expected port 5984, got %q", db.Port)
	}
}

func TestConnectSuccessDefaultPort(t *testing.T) {
	defer uninstallFakeHTTP(installFakeHTTP(&fakeHTTP{
		responses: []http.Response{
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"version":"CouchDB"}`)),
			},
			http.Response{
				StatusCode: 200,
				Body:       ioutil.NopCloser(strings.NewReader(`{"db_name": "db"}`)),
			},
		},
	}))

	db, err := Connect("http://localhost/db")
	if err != nil {
		t.Fatalf("Expected no error, got %v", err)
	}
	if db.Port != "80" {
		t.Fatalf("Expected port 80, got %q", db.Port)
	}
}

redpajama_set_name: RedPajamaGithub


text:
New York Real Estate Summit
Schedule of the event
Michael Stoler
The Stoler Report
Building New York-NY Life Stories
Michael Stoler Television
New York Business Report
The Money Summit
Monday, June 22, 2015: Outlook for 2015: The sky is the limit on what we can expect
365 Fifth Avenue New York, NY 10022 USA
michaelstoler@icloud.com
The New York Real Estate Summit-The State of the commercial real estate market in 2015, is a half day symposium being held on Wednesday, September 10th, 2014 from 7:30 AM to 1:30 PM at the Proshansky Auditorium of the Graduate Center of the City University of New York, 365 Fifth Avenue, New York City
Michael Stoler is the President of New York Real Estate TV, LLC and a Managing Director at Madison Realty Capital, a private equity firm.
Prior to joining Madison in January 2009, Michael served as a Senior Principal at AREA Property Partners (formerly Apollo Real Estate Advisors), a leading real estate fund manager, where he focused on new acquisitions across all of Apollo's funds under management. Mr. Stoler was previously affiliated with First American Title Insurance Company of New York as a Senior Vice President, and Princeton Commercial Corporation and Michael Stoler & Associates, management consulting and financing firms which he founded in 1977.
Mr. Stoler is the host and executive producer of "The Stoler Report-Real Estate Trends in the tri-state region", now in its twelfth season. He also serves as the host and executive producer of "Building New York-New York Life Stories" which began its ninth season in September, 2013.
Mr. Stoler is the creator, host and moderator of the "New York Business Report with Michael Stoler" which debuted on PBS in the tri-state region in September, 2012. He also serves as the real estate commentator on 1010 WINS AM radio: "The Michael Stoler Real Estate Report" which premiered in 2007 and airs on the weekends.
He serves as a "Contributor" and columnist for the Commercial Mortgage Observer and has served as a senior columnist for the "Commercial Observer" and the "Real Deal Magazine". He served as a real estate columnist and contributing editor for the "New York Sun".
Mr. Stoler serves as Adjunct Associate Professor at the NYU Real Estate Institute and as one of the co-chairs of the annual capital markets symposiums. He frequently speaks and moderators at panels and events including the New York State Society of Certified Public Accountants, National Realty Club, Real Estate Lenders Association, Building Owners & Management Assocation, Appraisal Institute, Association of Real Estate Women, Real Estate Board of New York, Long Island Real Estate Institute.
He is the creator, moderator and coordinator of "New York and New Jersey Real Estate Summits" and serves as a member of the Board of Directors of the Real Estate Lenders Association and the Real Estate Practitioners Institute of Long Island, affiliated with Stony Brook University.
Mr. Stoler serves on the divisional board of Queens County Savings Bank a member bank of New York Community Bancorp.
Mr. Stoler is the Co-founder, President & CEO, of the Foundation for Medical Evaluation and Early Detection, which is a benefactor to the Yeshiva University Program for Jewish Genetic Health. He serves on the Men's division board of the Albert Einstein College of Medicine, where he served as the Chairman of its Young Men's Division. He is a member of the board of the Jewish Community Relations Council of New York and executive board of the New York City region of State of Israel Bonds as well as the Campaign Chairman for its real estate division.
Michael is overseer to the board of the NYU Langone Medical Center and was the chairman of the medical centers, Kaplan Comprehensive Cancer Center, where he implemented "Cancer Awareness Month". He served as the treasurer and member of the board of the New York College of Podiatric Medicine, as well as the president of the American and International Friends of the Rambam Medical Center and American ORT. He served as a member of the board of the Hospital for Joint Disease, Helene Fund College of Nursing and president of the Joint Passover Association of New York City.
Powered by Squarespace. Site background by Flickr user 5chw4r7z.


Credit Bubble Stocks: Obviously, San Francisco Fed President Williams Has Never Heard of "Buy the Rumor, Sell the News"
Obviously, San Francisco Fed President Williams Has Never Heard of "Buy the Rumor, Sell the News"
Economists at the San Francisco Fed recently looked at how commodity prices reacted when the Fed announced new policy actions to stimulate the economy. If Fed policies were responsible for the commodity price boom, then we should have seen those prices jump when the Fed announced more monetary stimulus. In fact, the researchers found that, if anything, commodity prices fell after new policy announcements and were not pushed higher by news about Fed policy. So, I don't see any convincing evidence that monetary policy has played a significant role in the huge surge in commodity prices.
The problem with their approach is that, before the Fed does anything, they have their puppets do a speaking tour/trial balloon campaign and they leak the details to financial journalists.
Traders hear about the Fed liquidity plans and buy the rumor. Then they sell the news.
Williams has been with the Fed since 1994. As far as I can tell, he has never had a real job. He probably doesn't know about "buy the rumor, sell the news". He needs a Credit Bubble Stocks lesson in Applied Cynicism.


Journalists receive hundreds of pitches in any given week, so what should you say to make sure you get noticed instead of ignored? That's why we are here!
Personalize – Take the time to research who you are pitching. Know their beats, how to spell their name correctly – you'd be surprised how important this is to some journalists – and for which outlets they write. It always helps to read previously written articles to get an idea of their writing style and topics they cover.
Short and Sweet – Keep your "love note" about what you're pitching concise. As we previously mentioned, some journalists receive hundreds of pitches each week and will be turned off if they open a pitch that's too long.
Catchy Subject Line – This is key to making your pitch stand out. You need to catch the journalist's attention right off the bat to ensure they don't pass by your pitch without even reading it.
Be Excited – Get excited about what you're pitching! Let the person you're emailing feel the passion behind your pitch – sell it to them.
Even with these tips, don't forget to always follow up. Many journalists will thank you for following up because your pitch fell off their radar or they were preoccupied writing another piece. With this advice, you're ready to go. Happy pitching!
Next PostThe D&Co Dynamos Think Pink!


Ahhhh! Sorry, moment of panic.
My worry isn't so much the car ride (although it should prove interesting trying to entertain a baby for hours a day who hates being in his car seat and isn't interested in movies yet). No, my biggest anxiety is keeping my gluten sensitive daughter fed while away from my safe gluten free kitchen.
This morning as I sat on the floor with Dax while he played with his toys, Miah came and sat beside me and simply said, "I wish I could have gluten too." She wasn't upset, just thoughtful. "It's not always easy being different," I said with a smile, "but different is good too."
Different is good, but I can make it easier by planning ahead and being prepared with knowledge and gluten free food ready to go. So now that panic mode has passed, I am preparing so we can make wonderful memories.
MAKE IT, PACK IT, SNACK IT!
Making gluten free snacks and breads ahead of time and packing them in a cooler for the road won't just save you from anxiety about whether something is safe to eat or not, but will also save a ton of money. If you plan on staying overnight at a hotel, their complementary breakfast may provide you with some fresh fruit, but each hotel and hotel chain is different so come prepared in case. For a meal on the road or a filling snack, this week I'll be making and freezing GF Applesauce Muffins, Homemade GF Granola Bars, and Homemade GF Sandwich Bread . I'll also have the cooler full of peeled and cut fruits and veggies like carrots, cucumbers, celery, bell peppers, apples, oranges, grapes, as well as some raw almonds, cheese sticks and yogurt. That should keep everyone's munchies in check.
Since my grandma is a born and raised Southerner I know food at her house will be battered and fried (tasty, but not gluten free). So I'm going to mix the dry ingredients for Homemade GF Waffles (which also works well as pancakes) and pack it in a plastic container as well as some GF oatmeal and rice noodles for a gluten free equivalent to whatever everyone else will be eating. The great thing about grandma's house in the summer is the overload of fresh eggs from her chickens, and fruit and veggies from her garden so no worries there! Overload is the wrong word since you really can never have too much fresh whole food.
It was a tradition growing up on my family's yearly excursion to Arkansas to stop once each day of our journey for an ice cream cone. It was special because my family rarely ate out when I was younger. It's a tradition that I want to continue since my children don't eat out often either. So here's my top picks of drive thrus and quick eats with links to their list of gluten free options. As always be sure to let the food handlers know of your special dietary needs so they can avoid cross-contamination and serve you properly.
Wendy's (as you've probably already guessed), Arby's, and Chick-fil-A have the most comprehensive and comforting gluten free menus of any fast food place and you can never go wrong with Costa Vida. You can tell them you want it gluten free and watch them wash their hands, change gloves and make it right in front of you.
Some prep work now means that we'll be able to enjoy a less stressful and more memorable adventure.
Road trip! Road trip! Road trip!....Are we there yet?


ICOPFE "An International Conference on Perspectives for Future Education" was hosted by the Faculty of Education, Cyprus International University (CIU).
Cemal Özyigit, the Minister of National Education of the Northern Cyprus, pointed out that the world has been developing and changing rapidly at his opening speech and he pointed out the importance of following the progress both in education and production. Özyiğit, the Minister stated that it is essential to shape the future in the right way for the production of the country and he stated with the ideas and thoughts, which are proposed, the groundwork to direct the future of education has been prepared.
Rector Prof. Dr. Halil Nadiri stated that it is important to have human resources that are well-educated, qualified, following technological developments, sensitive to the world problems and be able to think analytically in the developing and changing world and he added that students are prepared for the future considering these necessities. Rector Nadiri expressed his gratitude that the Faculty of Education, one of the most prominent faculties of the CIU, has hosted such an academic event and he said "These studies will shed light on the formation of future education policies".
Prof. Dr. Muhittin Tuş, the Dean of the Faculty of Education said at the conference presentations were done and ideas were exchanged related to the general education problems around the world in addition to the ones in Cyprus and Turkey.
Prof. Dr. Fatoş Silman, the Head of the Educational Sciences Department pointed out the importance of how to adapt future technological developments to the classroom environment, how to enrich the education programs and how the education management system should be while these goals are achieved about the future of education.


View the mall layout and find a store using our store directory.
Stay up to date with the latest news, events, exhibitions, promotions and competitions on the go at Beacon Bay Retail Park.
Take advantage of the convenience offered by our Centre's 26,798.54m² of open-air shopping space. Get leasing information and become a retailer.
Beacon Bay Retail Park is conveniently nestled next to the N2 Highway, located on Bonza Bay Road. The centre boasts an open-air and one-level shopping environment offering shoppers the utmost convenience, choice, completely free parking facilities and easy access to all stores while indulging in retail therapy… Learn more about us.
Pop into Beacon Bay Retail Park and visit the Easter Village for some exciting activities. 20 – 22 April 2019 Shanbright Photography will be hosting the Easter Village in the Banking Mall: Photos will be taken and sent via WhatsApp to parents or you can have them printed at an additional cost of R30 per photo. Face… Read more.
Beacon Bay Retail Park boasts a wide selection stores to suit all your needs, anchored by Pick 'n Pay, Edgars, Game and Sportsmans Warehouse.


text:
Q: ERROR - SQL Error '[Cache ODBC][State : S1000][Native Code 29] I have been using the query below and it was working fine but now it's giving a SQL error.
There were no changes made that could cause this to stop working.
There is no Field 'APPLICATIONID' in the table.
QueueSQL=select distinct (convert(char(5),SkillsetID)+'='+Skillset) from iagentbySkillsetStat where ApplicationID > 10000

QueueMappingSQL=SELECT DISTINCT (convert(char(5),SkillsetID)+'='+Skillset), SkillsetID FROM iagentbySkillsetStat iagentbySkillsetStat WHERE (iagentbySkillsetStat.ApplicationID>10000)

DB- Intersystems Cache
Error details for the log files are below.
14/09/2016 11:20:05 a.m. > ERROR - SQL Error '[Cache ODBC][State : S1000][Native Code 29]
[C:\xlink\xlink Compiled Package\Xlink Application\Isps_Ul.exe]
[SQLCODE: <-29>:<Field not found in the applicable tables>]
[Cache Error: <<SYNTAX>errdone+2^%qaqqt>]
[Details: <Prepare>]
[%msg: < SQL ERROR #29: Field 'APPLICATIONID' not found in the applicable tables^select distinct ( convert ( char ( 5 ) , SkillsetID ) + :%qpar(1) + Skillset ) from iagentbySkillsetStat where ApplicationID >>]'

A: Question was also asked at InterSystems Developer Community, where I noticed that table names are different. So, the answer is, that table name is suddenly changed somehow.


text:
The BMW 840Ci Was The Everyman's Super-Luxury GT Cruiser
By Jeff Dunham / February 24, 2018
A V12 engine is a signature feature of any great grand touring car. But not everyone can afford the costs associated with 12-cylinder motoring, which is why BMW built the 840Ci, a cheaper, V8-powered version of its top-tier 8-Series coupe back in 1994.
The less complex 840Ci was $17,000 (about $29,000 in today's money) less than the comparable V12-powered 8er, making it a whole lot more attainable for potential buyers. Motorweek tested the car back when it was new, and found it didn't perform that much worse than the V12-powered version.
Braking distances, 0-60 times, and track handling were all just slightly off the more expensive 8-Series thanks to the 4.0-liter V8's mid-range torque and lighter weight. And just because you have four fewer cylinders, doesn't mean you got fewer features—the 840Ci still came with heated memory power seats, a high-tech climate system, and BMW's most advanced five-speed automatic transmission of the time.
Ford Considered A 13-Speed Gearbox For The Ranger Raptor
BMW Commemorates 30 Years Of Convertibles With A Special Edition M4


text:
Q: What am I doing wrong in my russian doll caching? This is my code:
<% cache(author_helper_method) do %>

    <% @authors.each do |author| %>
      <% cache(author) do %>

My name is <%= author.name %>

        <% author.articles.each do |art| %>

I wrote: <%= link_to art.name, articles_show_path(art) %>

        <% end %>
      <% end %>
    <% end %>

<% end %>

The problem is that my articles and article links aren't rendering except for the first one. Only the names are rendering. Here is what my page looks like:

This is a terrible authors index page. One of the worst ever.
Stats My name is Yasmeen Conn
I wrote: some commenter
My name is Kellen Marks
My name is Dr. Hattie Durgan
My name is Reta Glover Sr.
My name is Keely Klocko
My name is Michele Reinger
My name is Josue Parisian

Only the names appear when I read from the russian doll cache and only the first article "some commenter" appears. Any idea why?
FYI, an author has many articles and an article belongs to an author.
Here is some other code if needed:
module ApplicationHelper
  def author_helper_method
    count = Author.count
    max_updated_at = Author.maximum(:updated_at).try(:utc).try(:to_s, :number)
    "authors/all-#{count}-#{max_updated_at}"
  end
end


Travel from Viterbo to Caserta and discover this Campania city of 73.000 inhabitants. The distance from Viterbo to Caserta is 383 kilometers; with Wanderio you can compare the available trains to get from Viterbo to Caserta, so that you can organize your trip choosing the fastest route, the most comfortable or the cheapest one. You can choose among different choices and organize your trip according to your needs, depending on whether you are looking for the fastest, the most comfortable or perhaps the cheapest travel solution. For example, by choosing a train from Viterbo to Caserta, you'll get to your destination in about 3 hours on average; train ticket prices start from 19 €.
You can get from Viterbo to Caserta by train, thanks to the 10 daily routes provided by ItaloTreno and Trenitalia. The train ride from Viterbo to Caserta takes about 3 hours on average and the average train ticket is 47€. If you book in advance, you can find the best fares and save 42% on average on your train ticket, with prices starting from 19€. Travelling Italy by train can often be cheap.


text:
# The Components Theme
By [BLKDG](https://www.blkdg.com)

The Components Theme is a Wordpress theme that utilizes Component Based Development (CBD) practices. Following some simple guidelines, the theme is set up to separate out component views from the templates, allowing developers to treat components as truly reusable views.

## Getting Started

Run the following commands from your terminal.

`npm install`

`gulp`

## The Toolkit

We've found what works for us at [BLKDG](https://www.blkdg.com) and have continually added to the arsenal. The general thought is that the NPM packages are only used locally during the dev process and are in the gitignore file. The bower packages are plugins and other tools that we utilize everywhere, so those get shipped with the production code and are included in `assets/vendor`. Below is the list of bower packages. Not all packages are enqueued, but its nice to know they are there. You can see the list of enqueued javascript plugins in `includes/enqueue-scripts.php`.

* Bootstrap Sass (We'll be updating to Bootstrap 4.0 when its ready for production)
* Font Awesome
* Fancybox - A flexible lightbox plugin
* GSAP - An incredible animation library
* JS Cookie - This plugin helps us utilize cookies with javascript, since Sessions & Cookies can be tricky to work with the WP Engine environment (which we use exclusively for hosting)
* Slick Carousel - By far the best slider plugin we've every used.

## Development Practices

In order to take advantage of the system we'll want to think about our files a little differently.

### 1. The Includes Folder

The includes folder contains most of our system, ajax, models, etc. code. Outside of what is already set up (enqueue scripts, theme cleanup & support), we can also add our Classes & Methods (functions) to handle more custom/complicated calls to the database. Be sure to add any file you create in the includes folder to the functions.php file.

### 2. Template Files

This includes everything from our top level files (`single.php`, `index.php`, `page.php`, `front-page.php`, `archive.php`, etc.) to the files we create in our `/templates` directory. This is where we begin treating the files a little differently.

In taking some queues from the MVC model, we're now treating high level template files as a 'Controller' of sorts. With strict practice/implementation, you should not have any html in these files. They are simply there to pass data to & call the appropriate components. Utilization of a routing method within our `Components\View` class called `Components\View::render()`, we can call the components similarly to the WP Core function get_template_part(), but with the addition of passing in custom data if needed. An example of this may look like the following:

```
<?php get_header();

	while ( have_posts() ) : the_post(); ?>

		<?php
			// Create a new Object
			$object = new StdClass;

			// Pass your data into the new object
			$object->title = get_the_title();
			$object->image = get_the_post_thumbnail_url();

			// Render the component and include our data object
			Components\View::render('section', 'title', $object);
		?>

	<?php endwhile;

get_footer(); ?>
```
This is helpful because we may want to reuse this component somewhere else in the site. So by removing data from the component completely, we can pass whatever we want into the component. Here's an example using some Advanced Custom Fields Data.

```
...
<?php
	// Create a new Object
	$object = new StdClass;

	// Pass your data into the new object
	$object->title = get_field('section_header');
	$image = get_field('background_image');
	$object->image = $image['url'];

	// Render the component and include our data object
	renderComponent('section', 'title', $object);
?>
...
```

### 3. Components

Now we'll look at the components themselves. Gulp is set up to automatically comb our components for sass files, so you can create as many sass files in the components folders as you like. We've include an `enqueue_scripts()` function in our `renderComponent()` function that calls the component js file on demand. So that file will only be called if the related components php file is being used on the page. Gulp will automatically minify and uglify the js files you create. Using our example above, the components folder structure may look something like this:

```
/components
├── /section
	├── section-title.php
	├── _section.scss
	├──section.js
```

When creating the component php file, we found that it is very helpful to list out the variables being used within the component at the top of the file. Your component (`section-title.php`) may look something like this:

```
<?php
/**
 * The Section Title Component
 *
 * @param string $DATA->title
 * @param string $DATA->image
 */

if(isset($DATA->title)){ ?>
    <div class="section-title">
		<h1><?php echo $DATA->title; ?></h1>
		<?php echo ($DATA->image)? '<img src=".$DATA->image.">' : ''; ?>
    </div>
<?php } ?>

```

## Theme Enhancements & Updates

We utilize the Trello board below to manage development tasks

https://trello.com/b/mlqDk6Ff/components-theme


text:
Q: Symfony4 doctrine utf8mb4 not detected i have an issue with doctrine and symfony4.1, he don't take my charset parameter.
I have always my tables with charset utf8 and collate utf8_unicode_ci.
I have tried with mariadb / mysql and nothing work he never detect my charset configuration.
I have drop my database, recreate and migrate mutiple times and clear cache everytime. But he doesn't work.
commands :
php bin/console doctrine:database:drop --force
php bin/console doctrine:database:create
php bin/console make:migration
php bin/console doctrine:migration:migrate

here my configuration file :
doctrine:
    dbal:
        driver:   pdo_mysql
        host:     "%env(DATABASE_MASTER_HOST)%"
        dbname:   "%env(DATABASE_DBNAME)%"
        user:     "%env(DATABASE_USER)%"
        password: "%env(DATABASE_PASSWORD)%"
        slaves:
            slave1:
                host:     "%env(DATABASE_SLAVE_HOST)%"
                dbname:   "%env(DATABASE_DBNAME)%"
                user:     "%env(DATABASE_USER)%"
                password: "%env(DATABASE_PASSWORD)%"
        charset: utf8mb4
        default_table_options:
            charset: utf8mb4
            collate: utf8mb4_unicode_ci
    orm:
        auto_generate_proxy_classes: '%kernel.debug%'
        naming_strategy: doctrine.orm.naming_strategy.underscore
        auto_mapping: true
        mappings:
            App:
                is_bundle: false
                type: annotation
                dir: '%kernel.project_dir%/src/Entity'
                prefix: 'App\Entity'
                alias: App
        dql:
            string_functions:
                GROUP_CONCAT: DoctrineExtensions\Query\Mysql\GroupConcat
                IF: DoctrineExtensions\Query\Mysql\IfElse
                FIND_IN_SET: App\DQL\FindInSet

When i add to my sql configuration file :
character-set-server = utf8mb4
collation-server     = utf8mb4_unicode_ci

My database is created with utf8mb4_unicode_ci
but my tables is always generate with utf8 / utf8_unicode_ci
It work if i create my entity with the options parameter:
@ORM\Table(options={"charset":"utf8mb4"}...)

But i don't want to change all my table like that and my jointable are always with utf8.
why he don't take my configuration of charset.
It look likes something doens't work when i use MasterSlaveConnection.
Thanks a lot for your help.


UNITE HERE Local 47 is currently accepting Resumes by FAX ONLY.
PLEASE NOTE: If you do not have CSTS and OSSA Regional Orientation or OSSA BSO your resume will NOT be accepted!
Failure to adhere to above directions and conditions will result in disposal of applicants resume. Thank you for taking the time to submit your resume.
What kinds of jobs do we dispatch members to do and what qualifications do they need to possess?
NOTE: All our members must pass Employer mandated Drug and Alcohol testing and possess the following Certificates Food Safe, CSTS and BSO Regional Orientation certification.


Thumbay Group, UAE will be a differentiated universal business aggregate for its home office On DIFC – Dubai, united Middle Easterner emirates.
Constantly on healing facilities Also centers under the gathering gatherings give educating Furthermore preparation chances for the scholars about Gulf restorative University, Ajman, a heading private restorative college of the district possessed and worked by the gathering. Gulf restorative school attracts An scholar associate for through 75 nationalities Also employees and disappointments and outrage on his/her staff starting with again 22 nations.An academic What's more entrepreneurial powerhouse, the Thumbay gathering takes its quality starting with an enabled Furthermore reliable Worker aggregation surpassing three thousand individuals.
Today, the Thumbay bunch will be an image from claiming predominant service, caliber Also advancement. With develop Likewise An premier worldwide business house, serving different segments of the particular social order for inventive results and benefits about unmatched caliber Also integument What's more motivating confidence, satisfaction, trust and unwaveringness "around the group keeping crosswise over societies.
The Thumbay gathering possesses a solid set about values that plans should backing business coordination same time making An sense for having a place.They touch upon benefits of the business areas, activities, existing corporate society Also nation over from claiming operation.