text:
Tagged: takeshi kobayashi
All About Lily Chou-Chou
Shunji Iwai's ode to disengaged youths that searched for meaningful connection in online forums, as we follow the unraveling of a bunch of teens who grow isolated from each other and find solace in the mysterious and enigmatic Lily.
Amy's Top50 Songs of 2015
Amy takes a look at her favorite 50 songs of this 2015.
Yen Town Band – AINONE
One of everyone's favorite fictitious bands, YEN TOWN BAND, straight out of Shunji Iwai's 1996 film Swallowtail Butterfly (スワロウテイル), is back.
Salyu – Ever Since We Loved
The Salyu and Takeshi Kobayashi song all Salyu fans missed.
Mayday – Do You Ever Shine?
Taiwanese band Mayday continue their Japan activities with the release of Do You Ever Shine? which can be spotted as the ending theme of this season's Japanese drama Bitter Blood (ビター・ブラッド, aka. Partners by Blood).
Experiment Awards: Foreign – Best of the 2000s
Instead of reviewing my favorite films of the past decade (2000-09) for The LAMB's Foreign Chops: Best of the 2000s, I wanted to list them all.
2012 End of the World Time Capsule
Here lies history. Buried by the YAM Magazine team for the 2012 End of the World.
Salyu – Lighthouse
Salyu releases her new single Lighthouse, featuring dancer Masako Yasumoto (康本雅子) in slo-mo backwards black and white footage directed by Fumiko Hirano (平野文子).
Lily Chou-Chou – Tokyo, Japan 2010
Celebrating the 10th anniversary of Shunji Iwai's masterpiece, All About Lily Chou-Chou, the fictional singer embodied by Salyu performed at the Nakano Sun Plaza Hall for 2000 lucky fans on December 15th.
Bandage is directed by Takeshi Kobayashi… who produces great music. Alas, Bandage is not that great of a story or have great characters, but it's got pretty good music.


You will develop skills to allow yourself to be creative with your ideas. Leadership starts with ideas and being able to think in ways different to the people around you, will give you the edge you need to succeed.
Once you have developed ideation skills you will put them into practice designing your own project, or a project which you can work on collaboratively with other members of the group.
Having developed the skills to collect data, you will now consider for your own project what data you need and get creative in your methods to collect it.
After structuring your data needs you will make an initial start at the data collection process. This can be tested with your team or group, and then extended to a wider set. You will take full advantage of social media at this stage, to widen and build your data set.
College counselling: Where next with Psychology?
In this evening session you will discuss with your mentors which universities or courses are best suited for a career path connected to psychology. What are universities and companies looking for in their future leaders. You should be prepared to ask as many questions as possible in this session as you will be surrounded by people from the top schools, who have achieved leadership position in this subject area.
As a conclusion to your Leadership Programme you and your team will present your project and results in the most innovative way you can. The best presentations will be uploaded to the IWA website.


text:
using System.Collections.Generic;
using System.Text.Json;
using Azure.Core;

namespace Azure.Analytics.Synapse.Artifacts.Models
{
    public partial class IntegrationRuntimeVNetProperties : IUtf8JsonSerializable
    {
        void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
        {
            writer.WriteStartObject();
            if (Optional.IsDefined(VNetId))
            {
                writer.WritePropertyName("vNetId");
                writer.WriteStringValue(VNetId);
            }
            if (Optional.IsDefined(Subnet))
            {
                writer.WritePropertyName("subnet");
                writer.WriteStringValue(Subnet);
            }
            if (Optional.IsCollectionDefined(PublicIPs))
            {
                writer.WritePropertyName("publicIPs");
                writer.WriteStartArray();
                foreach (var item in PublicIPs)
                {
                    writer.WriteStringValue(item);
                }
                writer.WriteEndArray();
            }
            foreach (var item in AdditionalProperties)
            {
                writer.WritePropertyName(item.Key);
                writer.WriteObjectValue(item.Value);
            }
            writer.WriteEndObject();
        }

        internal static IntegrationRuntimeVNetProperties DeserializeIntegrationRuntimeVNetProperties(JsonElement element)
        {
            Optional<string> vNetId = default;
            Optional<string> subnet = default;
            Optional<IList<string>> publicIPs = default;
            IDictionary<string, object> additionalProperties = default;
            Dictionary<string, object> additionalPropertiesDictionary = new Dictionary<string, object>();
            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("vNetId"))
                {
                    vNetId = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("subnet"))
                {
                    subnet = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("publicIPs"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    List<string> array = new List<string>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        array.Add(item.GetString());
                    }
                    publicIPs = array;
                    continue;
                }
                additionalPropertiesDictionary.Add(property.Name, property.Value.GetObject());
            }
            additionalProperties = additionalPropertiesDictionary;
            return new IntegrationRuntimeVNetProperties(vNetId.Value, subnet.Value, Optional.ToList(publicIPs), additionalProperties);
        }
    }
}

redpajama_set_name: RedPajamaGithub


The KS7500 is a great combination of performance and price, bringing you powerful computing and reliability.
With an aluminum chassis for maximum heat diffusion, the fanless KS7500 is able to handle POS applications with ease. The resistive touchscreen makes interfacing straightforward.
The KS7500 is environmentally tested for drop, temperature and shock, and features an adjustable tilting screen and optional MSR.
The Posiflex KS7500 is a fanless all-in-one PC. Available with a 15 inch or 17 inch monitor.
Other options may be available, please call!


text:
General Criminal Defense
DUI (Drunk Driving)
Title IX Violations
Verdicts & Cases
Strong Criminal Defense Forged By
Is it legal to share prescription drugs?
On Behalf of Steven Wetter Attorney at Law, P.A. | Sep 17, 2022 | Drug Charges
Many Florida residents know people who regularly take prescription drugs. However, it's not only a bad idea to share your prescription with another person; it's also illegal. Never share your prescription drugs with others Even if you believe it's harmless to allow a...
The concept of probable cause in drug-related searches in Florida
On Behalf of Steven Wetter Attorney at Law, P.A. | Sep 9, 2022 | Drug Charges
If you are facing drug charges, one of the most important things to consider is whether the police had probable cause to search you. Probable cause means that the police reasonably suspected that you were engaged in criminal activity. If you've been arrested and...
Doctor shoppers could face additional charges in certain states
On Behalf of Steven Wetter Attorney at Law, P.A. | Aug 25, 2022 | Drug Charges
Most doctors in Florida assume that their patients have good intentions when scheduling appointments. Unfortunately, that's not always the case. One of any doctor's worse fears is unknowingly aiding a patient who is doctor shopping as this practice can have dangerous...
College students and troubles with stimulant drugs
On Behalf of Steven Wetter Attorney at Law, P.A. | Jul 19, 2022 | Drug Charges
Students may need to work hard to get good grades in school, and the work could involve spending significant time studying. When there are only 24 hours in a day, some Florida students may attempt to decrease the amount of sleep they get. Drinking lots of coffee and...
Possible defenses to drug possession charges
Drug possession is a serious offense in Florida, carrying the potential for harsh penalties including jail time, probation, and fines. If you've been charged with such a crime, it's vital to understand the possible defenses that may be available to you. Lack of...
Options for having your felony charge reduced
On Behalf of Steven Wetter Attorney at Law, P.A. | May 31, 2022 | Drug Charges
If you've been charged with a felony drug charge in Florida, it can lead to serious consequences. However, there are ways that you can get the charge reduced to a misdemeanor so that you don't spend as much time behind bars or pay fines that are quite as high. Plea...
Florida drug penalties for smuggling and selling
On Behalf of Steven Wetter Attorney at Law, P.A. | Apr 17, 2022 | Drug Charges
Florida reported over 134,000 arrests for illegal drugs in 2018, and 5,404 were juveniles. Controlled substances are against the law in all states because of their addictive nature. Citizens in Fort Lauderdale, Florida, may face stiff penalties for drug abuse and...
Florida cocaine law and penalties
On Behalf of Steven Wetter Attorney at Law, P.A. | Mar 4, 2022 | Drug Charges
Cocaine is a stimulant commonly made into a powder from the coca plant. Since it is highly addictive, it is classified as a controlled substance. A resident of Florida can face harsh penalties for buying, possessing or selling cocaine. Florida cocaine law overview...
Drug bust in Citrus County
On Behalf of Steven Wetter Attorney at Law, P.A. | Feb 28, 2022 | Drug Charges
Drug crimes are common but serious in Florida. In mid-February, narcotics detectives raided a Lecanto home. The sheriff's office made six arrests in connection to a raid. Evidence shows the suspects were selling fentanyl and meth out of their home. The drug raid The...
How Florida defines drug paraphernalia
On Behalf of Steven Wetter Attorney at Law, P.A. | Dec 31, 2021 | Drug Charges
Residents of Fort Myers and other areas of Florida may want to learn more about how the state defines drug paraphernalia. Not just bongs or needles, there are many other materials related to controlled substances. According to OnlineSunshine, paraphernalia means...
Drug Charges (31)
Traffic Violations (15)
DUI charges with medical marijuana even when unimpaired
Drug crimes and student loans
What are some common defenses to domestic violence charges?
Risks of faulty eyewitness testimony
What happens during a DUI preliminary hearing?
Start Your Defense Today
Photo of attorney -Steven H. Wetter
1617 Hendry Street, Suite 213
Fort Myers Office
© 2023 Steven Wetter Attorney at Law, P.A. • All Rights Reserved

redpajama_set_name: RedPajamaCommonCrawl


Water Sports Come to Broadway!
'Will the gays travel all the way uptown to Lips' new East 56th Street location?" was the familiar chant when the drag restaurant moved there about a month ago.
But it turned out to be a moot point since the crowd mostly consists of teen girls eating birthday cake through their braces and bachelorettes celebrating their last encounters with tucked penises before locking themselves up in Long Island for all time.
Union drag queens fill La Cage aux Folles, which came up at the slightly more sedate Sardi's when the Drama Desk hosted a panel discussion there about the appeal of topical musicals. Co-star Christine Andreas said audiences weren't totally open for business when the show first came around in the AIDS-shocked '80s. But now, she said, people are sobbing after seeing "this little sugar-coated show with more reprises of songs than I've ever heard in my life. Between Kelsey Grammer and Douglas Hodge, there is this incredible love affair. Douglas comes off as a menopausal woman, then a drag queen, then a mother, then just a guy. You look at him at the end as a human. This little healing happens, and it all happens completely Jerry Herman–esquely. It's not a revival, it's a revelation. The third time, it lands!" Whether I agree or not, that's certainly one of the most delightfully detailed reviews of any show I've ever heard. No wonder critics are becoming obsolete.
Second best was Memphis's Chad Kimball talking about his own musical's appeal, relating how married men come to him and gush, "I usually get dragged by my wife and I usually fall asleep, but I had a great time!" About his own role—a progressive radio jock who not only breaks black artists, he sleeps with them—Kimball offered, "He's so not your average leading man. He's quirky and annoying at times—I said it—not unlike me." And the Best Musical Tony might help hush the naysayers who claim it's complete schlock-a-doo.
Over at the Cherry Lane, the 25th anniversary production of the smash Nunsense has a hard-working cast trying to sell lines like, "Hello, Dalai Lama—get it?" while staging a faux-fundraiser to bury four nuns in the freezer. As the proceedings get less self-conscious, they grow on you a bit—and it's certainly a good time when the Mother Superior opens a bottle of poppers—but all these years later, it feels like this particular habit is not that hard to break. In fact, the show seems to be having the opposite trajectory of La Cage's.
On a higher plane, I went to the opening-night gala for Shakespeare in the Park's The Merchant of Venice, the one about the moneylender accused of charging outlandish interest rates. "They force him to convert to Christianity at the end," someone told me, conspiratorially, and I replied, "We should do that to Bernie Madoff!" But a young gentleman in the crowd gave me the most cogent explanation of the varying arguments in the play and whether it ends up being anti-Semitic or balanced. He turned out to be the Dell dude! Again, goodbye, critics.
Caution—and clothes—were thrown to the wind at Roseland for Broadway Bares, which is like a circuit party for theater queens, the ribald revue featuring a colorful onslaught of production numbers, celebrity drop-ins, reality stars, and more production numbers. The slow-mo Jersey Shore number was a hoot and the "Orient Avenue" aerial routines had real artistry, but the "Waterworks" number of hot, shirtless guys faux-peeing on each other was the one people are still talking about, even if the official press release sent out after the event failed to allude to it. I just wish they had aimed their stuff at the audience to cool us off a bit.
A sweltering spectacle, the Mermaid parade in Coney Island was so wildly attended that I ended up stuck on the boardwalk in a mass of people, unable to see anything or to move to safety for scary chunks of time. Looming next to me all day was a crazed man who kept muttering, "I hope I don't get violent," but thankfully, he didn't, and fortunately, whatever I did see—including groups of people dressed like mermaids and singing Lady Gaga songs—was fun enough to make me wish I had fins. For all the bitching about how New York has lost its edge, there were enough bohemians there to fill all the holes in Sarah Palin's reasoning.
A lot of them resurfaced for Sunday's Gay Pride festivities, which auspiciously started with me sitting on a Hudson Street stage to judge the first annual Pet Pride contest along with Project Runway's Jack Mackenrouth and Last Comic Standing's Michele Balan. Five dogs were trotted out in rainbow sweaters and chiffon snoods, all of them looking uncomfortable in the heat, especially the winner, Muffin, when the ditzy drag MC wrongly announced her as the second runner-up! Michael Vick should have read her.
Then came the parade of humans, all of whom were fanning themselves with Cher and Christina Aguilera masks, which were handed out to promote the upcoming camp classic Burlesque. That studio truly knows its audience—but isn't a mask of Cher a little redundant?
Florent, the drag-friendly restaurant that defined the Meatpacking District, is the subject of David Sigal's documentary Florent: Queen of the Meat Market, which premiered to kudos last week at the NYC Food Film Festival. As performer Murray Hill said to restaurateur Florent Morellet that night, "Your food was filled with trans fat. That's a double entendre! It's a big loss, but I lost something else—seven pounds." Not me. There was a food reception for the film, then I went to a restaurant, and then I came back for the movie and the after-dinner.
At MOMA, there was a dinner/showing of Great Directors, a documentary that looks into the triumphs and challenges of various arthouse auteurs. The result has some lovely stuff, but feels so scattershot it leads you to think this film's director might not join them in the pantheon. As David Lynch explains in the film, a movie shouldn't really be talked about—"It's the whole thing, and it is there, and that is it." But fortunately, he talks anyway.
I'm off to another bachelorette party. I hope I don't get violent.


text:
Penn State Altoona to host Earth Week events April 16-20
Image: Photospin
Join Penn State Altoona in an Earth Week celebration April 16-20.
-- Monday, April 16 is a Kick-Off Campfire, 7 p.m. at Seminar Forest. There will be outdoor games and roasted marshmallows.
-- Tuesday, April 17 at noon, help fix up the rain garden between Smith and Slep, then listen to environmental studies alumna Alexandra Patton talk about her experience with AmeriCorps and the U.S. Forest Service.
-- On Wednesday, April 18, stop by Misciagna throughout the day to see environmental photography, paintings, drawings, and sculptures by Penn State Altoona students. There will also be a forest clean up in the area around Nittany Pointe from 10 a.m. to 2 p.m. Volunteers are welcome at any time. Contact erp129@psu.edu to sign up.
-- Thursday, April 19, folks from Shaver's Creek will present some awesome reptiles and amphibians, and environmental studies alumni Jake Vaughn will talk about his current research. 1 p.m. in the Misciagna Theatre.
-- Get your green songs on with Ian Marshall, Friday, April 20 at 1:30 p.m. in the Titelman Lounge of Misciagna. Marshall will perform environmentally-themed songs in the spirit of Earth Day. There will also be a Spring Run clean up from 9 a.m. to 1 p.m. Join the effort to clean the water way that runs through campus. Sign up in advance for hour slots by emailing erp129@psu.edu
Penn State Altoona celebrates Earth Day(s) with week-long events
Premiere of 'Managing Risk in a Changing Climate,' panel talk set for April 18
Penn State to celebrate Earth Week April 18-22
Activities and Traditions, Campus Life, Facilities and Landscape, Sustainability
altoona homepage, Earth Day, Earth Week, environmental studies, sustainability


How much do Raleigh Radiology employees make? Glassdoor has salaries, wages, tips, bonuses, and hourly pay based upon employee reports and estimates.
See Raleigh Radiology Hourly Pay or Raleigh Radiology Bonuses.


text:
Luis Enrique leaves role as Spain manager after World Cup
Spain announced the departure of Luis Enrique as coach of the national team on Thursday following the team's shock defeat to Morocco in the round of 16 at the World Cup.
The former Barcelona manager, whose contract with Spain was set to end at the end of the month, took full responsibility for his team's earlier than expected exit from the tournament in Qatar.
A statement from the Spanish FA said: "The RFEF would like to thank Luis Enrique and his entire coaching staff at the helm of the absolute national team in recent years.
2022 World Cup: Morocco beat Spain on penalties to reach quarter-finals
"The sports management of the RFEF has transferred to the president a report in which it is determined that a new project should start for the Spanish Soccer Team, with the aim of continuing with the growth achieved in recent years thanks to the work carried out by Luis Enrique and their collaborators. Both the president, Luis Rubiales, and the sports director, José Francisco Molina, have transmitted the decision to the coach."


Divya Sooryakumar is MADRE's Program Officer for Partnerships and Grantmaking. She manages MADRE's portfolio focused on intergenerational leadership and adolescent girls. Divya brings eight years of experience working with girls through grassroots feminist organizations including the Self-Employed Women's Association (SEWA Bharat) and smaller initiatives like Chhoti Si Asha. She brings expertise in education, gender, and strategic communications. She received her M.Ed in International Education Policy from the Harvard Graduate School of Education and a B.A. in Economics from Northwestern University.


Today I came across a very interesting article on the Internet.
It describes a system called "cognitive radio" which, in this case, allows the provision of cellular mobile services on an uncontrolled part of the radio spectrum known as an ISM (Industrial, Scientific and Medicine) band.
There are a number of ISM bands, some of which are recognised around the world as areas where unlicensed transmitters can be used for almost any purpose, so long as they conform to some basic rules.
Perhaps the most well-known ISM band is the one which resides between 2.4GHz and about 2.483GHz (depending a little on the country you're in). This is the band used by Bluetooth devices, wireless video cameras, radio-control systems for models and even microwave ovens.
The system in the article linked to above works on the 900MHz ISM band which is a little more suited for long-range communications but which is not as universally recognised or implemented as the 2.4GHz one.
The big bonus of ISM-band systems is that they don't require specific spectrum allocations for services and therefore allow for much lower costs.
The downside of course, is that each user of these ISM bands isn't guaranteed sole use and therefore some clever techniques have to be implemented to cope with the inevitable prospect of interfering signals created by other users.
In most cases, the interference problem is pretty readily handled by the use of spread spectrum technologies. These allow many different systems to effectively share the same piece of spectrum without significantly affecting each other.
It wasn't too long ago that spread-spectrum technology was pretty much restricted to the likes of military and scientific uses -- the hardware required to create and decode spread-spectrum (SS) signals being complex and expensive. However, as is always the case, advances have meant that SS is now very widely used.
WiFi systems are inevitably SS-based, using a technique known as direct-sequence spread spectrum (DSSS) transmission.
Another widely used SS technique is frequency-hopping spread spectrum (FHSS) which offers its own set of benefits.
Here is an article that explains spread spectrum and the various flavours thereof in a little more detail.
Some time ago (in another blog) I suggested that the 2.4GHz ISM band would be a great place to create a P2P cellular network whereby the concept of having fixed towers would become redundant. It appears as if the cognitive radio system is part-way there.
Although ISM-based P2P is unsuited to voice, its potential as a method for handling non-realtime information, such as text messages is huge.
My own experiments indicate that as little as 60mW transmitter power when used with an SS system and a small antenna suitable for hand-held devices, can deliver a range of up to 6Kms, depending on terrain and surrounds. It's clear therefore that such a system has a huge potential as a fee-free P2P SMS network, should suitable hardware become available.
Whether or not we actually see a "people's phone network" remains to be seen -- rest assured however, that the technology is here and people are getting interested already.


text:
Curtius és un cràter d'impacte que es troba a la part sud de la Lluna. Des de la Terra el cràter apareix en escorç, per això és difícil d'observar amb detall. Tot i això, es tracta d'un gran cràter que es pot localitzar fàcilment fins i tot amb petits telescopis. Curtius es troba dins d'un diàmetre de distància del cràter Moretus de més gran mida localitzada cap al sud-oest. Al nord-est apareix el cràter més petit Pentland. Curtius té 99 km de diàmetre i 6,8 km de profunditat. Es va formar al Període Nectarià, fa uns 4.000 milions d'anys

La vora exterior de Curtius s'ha suavitzat degut a l'erosió provocada per altres impactes, però conserva una gran part de la seva estructura original. Al llarg de les zones del nord i nord-oest de la vora apareix un parell de protuberàncies externes notables que trenquen la simetria general del cràter. Hi ha un petit cràter satèl·lit, Curtius E, que travessa la vora oriental, i un altre petit cràter en forma de bol, Curtius A, ubicat al sud del contorn.

El sòl interior és relativament pla, amb uns pics centrals baixos i arrodonits propers al punt mitjà. La part nord de la paret interior del cràter s'ha estès considerablement i ha produït una superfície lleugerament irregular. Aquesta plataforma interior està coberta per una sèrie de petits cràters, però no hi ha altres impactes notables a tot l'interior.

Cràters satèl·lit
Per convenció aquests elements són identificats en els mapes lunars posant la lletra en el costat del punt central del cràter que està més proper a Curtius.

Referències

Vegeu també
 Llista de cràters lunars
 Selenografia

Cràters de la Lluna
Quadrangle LQ30

redpajama_set_name: RedPajamaWikipedia


Michigan squares off against Texas in the CRC's first round. Photo credit: Jack Megaw.
Leading by a try with 90 seconds left in its Pool C match against Navy, Michigan weathered a breakway run into the try zone to preserve its lead and advance to 2-0 in the tournament.
"We've never been on this stage," Michigan's Matt Kasten said. "It's kind of crazy to go out and play against the top teams. We play in the Big 10, which isn't always here all the time. It's all the Life's and the Cal's of the world. It's very exciting."
With the clock widning down, Navy's Brandon Willis dashed towards the left try zone and was dragged down just shy before attempting a double-movement to touch the ball down.
"Down by five, we were trying to get the win," Navy's Ricky Neel-Fuller said. "We thought the edge was the easiest way to go. Everyone was in panic mode and everyone was trying to rush into the try zone. We just needed a little more patience instead of trying to force the ball in there and get the double-movement."
Sequoyah Burke-Combs, Kasten, Lawrence Armitage-Brown and Alex Davidson scored for the Wolverines, who will face Ohio State next after topping Texas in its first game.
"It's different going from an open field to a stadium," Davidson said. "There's no doubt about that. It was great to get that walk out there. There were no fans, so we could get used to our environment, get our composure and get set up. It's our first time here, so i'm really pleased we hit the ground running and i'm really looking forward to our next game already."


text:
"The Breath of Life" Cast & Creative Team
The Breath of Life
By David Hare
Directed by Ken Rus Schmoll
(in order of appearance)
Gretchen Corbett
Madeleine Palmer
Julia Brothers
Frances Beale
Lizzie Bracken
Brynn Almli
Solomon Weisbard Lighting Designer
Sharath Patel
Jane Fujita Dialect Coach
Janine Vanderhoff
Stage Manager
Sarah Stark Production Assistant
The Actors and Stage Manager employed in this production are members of Actors' Equity Association, the Union of Professional Actors and Stage Managers in the United States.
Gretchen Corbett, Madeleine Palmer
Gretchen has appeared on and off Broadway and in leading roles in prominent regional theaters across the country, including the New York, New Jersey and Oregon Shakespeare Festivals, Circle in the Square Theatre, the Eugene O'Neill International Festival of Theatre, Long Wharf Theatre, Seattle Repertory Theatre, and Center Theatre Group. She has appeared in numerous films and television series. Her local stage appearances include productions for Portland Center Stage at The Armory, Portland Playhouse, Third Rail Repertory Theatre, CoHo Productions, and Sojourn Theatre. She received lead actress awards for One Flew Over the Cuckoo's Nest, Happy Days, Molly Sweeney, It Had to Be You, and A Lesson from Aloes in Portland and for The Fox and Voice of the Prairie in Los Angeles. Gretchen is also an award-winning theater director.
Julia Brothers, Frances Beale
Julia is so excited to be at Portland Center Stage at The Armory for the first time! Recent credits: God in Weightless: A Rock Opera by The Kilbanes, directed by Becca Wolff, at The Public Theater's Under The Radar Festival, American Conservatory Theater, and Z Space. Other world premieres: playing Arthur Miller in Jeremy Tiang's Salesman之死 for Laguardia Performing Arts Center's Rough Draft Festival. Broadway: George Is Dead by Elaine May (directed by John Turturro). Off-Broadway: Clever Little Lies by Joe DiPietro at Westside Theatre. Regional: Walter Anderson's The Trial of Donna Caine at George Street Playhouse. Women in Jeopardy! at Geva Theatre Center; Be Aggressive and Ambition Facing West at TheatreWorks; and Seagull (as adapted by Libby Appel), Magic Forest Farm, and Fortune at Marin Theatre Company, among others. Julia is a company member of B Street Theatre and PlayGround, and an artistic associate at Merrimack Repertory Theatre and Arizona Theatre Company. A recipient of several regional theater awards, Julia was also named an "MVP for theater" by San Francisco Chronicle.
Meet the Creative Team
David Hare, Playwright
Playwright and filmmaker David Hare has written over 30 stage plays, including Plenty, Pravada (with Howard Brenton), The Secret Rapture, Racing Demon, Skylight, Amy's View, The Blue Room, Via Dolorosa, Stuff Happens, The Absence of War, The Judas Kiss, The Moderate Soprano, and I'm Not Running. For film and television he has written over 25 screenplays, which include Licking Hitler, Dreams of Leaving, Saigon: Year of the Cat, Wetherby, Damage, The Hours, The Reader, Denial, and The Worricker Trilogy: Page Eight, Turks & Caicos, and Salting the Battlefield. Most recently, David created the four-part series Collateral for BBC and Netflix, starring Carey Mulligan and Billie Piper. His new film about Rudolf Nureyev's defection to the West, The White Crow, opened in the UK in March, and his update of Ibsen's classic Peter Gynt opens at the National Theatre in June. In a millennial poll of the greatest plays of the 20th century, five of the top 100 were his.
Ken Rus Schmoll, Director
Ken has directed readings in six of the last 10 JAW Festivals at Portland Center Stage at The Armory. His work has been seen in New York City at Playwrights Horizons, New York Theatre Workshop, Vineyard Theatre, BAM, Lincoln Center's LCT3, Clubbed Thumb, Page 73, Foundry Theatre, and Encores! Off-Center, among others. Regionally, he has directed plays at American Conservatory Theater, Marin Theatre Company, Long Wharf Theatre, Two River Theater, Philadelphia Theatre Company, and the Humana Festival for New American Plays, among others. He is the recipient of two Obie Awards, a Lucille Lortel Award nomination, and a Drama League Award nomination. Upcoming productions include Zhu Yi's You Never Touched the Dirt for Clubbed Thumb, David Greenspan's adaptation of Thornton Wilder's The Bridge of San Luis Rey at Miami New Drama, Jordan Tannahill's Botticelli in the Fire at Marin Theatre Company, and Mia Chung's Catch as Catch Can at Steppenwolf Theatre Company.
Lizzie Bracken, Scenic Designer
Lizzie is delighted to be back at Portland Center Stage at The Armory after designing for The Magic Play last season. Regional: The Magic Play at Actors Theatre of Louisville, Olney Theatre Center, and Goodman Theatre; Lord of the Flies, The Book Thief, Blacktop Sky, and See What I Wanna See at Steppenwolf Theatre Company. Additional credits include On Clover Road with American Blues Theater; Burning Bluebeard with The Ruffians; Endgame, Ivywild, and Six Characters in Search of an Author with The Hypocrites; PopWaits and 44 plays for 44 Presidents with The Neo-Futurists. Lizzie received her M.F.A. from The University of Texas at Austin and her bachelor's degree in architecture from The University of Notre Dame. Prior to her career in theater, Lizzie was a designer with Fairfax and Sammons Architects.
Brynn Almli, Costume Designer
Brynn is a California-based costume designer working in theater, film, television, dance, and special events. Originally from Minneapolis, she studied comparative literature, sculpture, and fashion design before earning an M.F.A. in Design for Stage and Film from NYU Tisch School of the Arts. She lived and worked in New York City for six years before relocating to the Bay Area. Recent theater credits include Sagittarius Ponderosa (NAATCO), Birdbath (Kitchen Table Works), Plenty (NYU Graduate Acting), and Alphabetical (Columbia University). She has assisted on productions for Broadway, Hartford Stage, The Shakespeare Theatre, Theatre For A New Audience, Guthrie Theater, New York Musical Festival, Aspen Music Festival, and The Williamstown Theatre Festival.
Solomon Weisbard, Lighting Designer
Born in Portland, Solomon spent the last 13 years as a New York City-based lighting designer for all types of performance. With director Robert Wilson, productions in Germany at Festspielhaus Baden Baden and in Italy at Teatro Comunale di Bologna, Teatro Regio di Parma, Ancient Theatre of Pompeii, Teatro Olimpico di Vicenza, and Teatro Mercadante di Napoli. Local credits include Portland Playhouse's A Christmas Carol (Drammy nomination), pen/man/ship (Drammy nomination), Jitney, You for Me for You. Select Off-Broadway: Duat (Soho Rep); Men on Boats (world premiere, Playwrights Horizons/Clubbed Thumb); America Is Hard to See (HERE); The Film Society (Keen); and four productions with The Barrow Group. Regional theater: Arden Theatre Company, Berkshire Theatre Festival, Magic Theatre, Portland Stage, Quintessence, Westport Country Playhouse, Yale Repertory Theatre. M.F.A. from Yale School of Drama.
Sharath Patel, Sound Designer
Before arriving in the Pacific Northwest, Sharath spent nearly a decade as a lead sound designer in New York City. Designs include Wolf Play, Teenage Dick, Skeleton Crew (Artists Repertory Theatre); Nina Simone: Four Women (Alabama Shakes); Christmas at Pemberley Pt.2 (Marin Theater Company); Ibsen in Chicago (Seattle Repertory Theatre); The Crucible, The Royale (ACT Theatre); As You Like It (California Shakespeare Theater); Free Outgoing (East West Players); WIG OUT! (American Rep/CompanyONE). Regional/international credits include designs in Washington, D.C., Norfolk, Raleigh, Aspen, Dublin, India, France, England, Germany, and Romania. Sharath is a member of United Scenic Artists Local 829, IATSE, and the Theatrical Sound Designers and Composers Association. He is an Arts Envoy for the U.S. Department of State and a resident artist at Artists Repertory Theatre. M.F.A. from Yale School of Drama. sharathpatel.com.
Jane Guyer Fujita, Dialect Coach
Jane is a New York-based voice specialist and dialect coach on faculty at New York University's Graduate Acting Program. Production coaching includes: Broadway, Ensemble Studio Theater, LCT3, The Flea Theater, La MaMA, The Playwrights Realm, Primary Stages, The Public Theater, Signature Theatre, Theater for the New City, Page 73, American Repertory Theater, Williamstown Theater Festival, Yale Repertory Theater, Hudson Valley Shakespeare, The Curran Theater, Actors Shakespeare Project. Film: Sidney Hall, Strange Love, Freedom, The Makeover. TV: Seven Seconds, Power, Z: The beginning of everything, Red Oaks, The Family. She earned her M.F.A. from the ART Institute at Harvard, where she studied voice and speech pedagogy under Nancy Houfek.
Janine Vanderhoff, Stage Manager
Janine is thrilled to be back for her fourth season at Portland Center Stage at The Armory. She recently stage managed Tiny Beautiful Things, A Christmas Memory/Winter Song, and The Color Purple. Other favorites include: Wild and Reckless, The Oregon Trail, and Lady Day at Emerson's Bar and Grill. In New York, Janine worked on The Lion King, as well as with many Off-Broadway and regional companies. Portland credits: Sweeney Todd (Portland Opera), Play, How to End Poverty in 90 Minutes and The Other Place (Portland Playhouse). Touring: The Graduate, Cats, The Vagina Monologues, Jekyll & Hyde, and Show Boat. Production management: The Daily Show with Jon Stewart "Democalypse 2012 Republican National Convention" (Tampa, FL); Straz Center (Tampa, FL); The Fox Theatre (Atlanta, GA). Proud NYU graduate and AEA member.
Sarah Stark, Production Assistant
Sarah is a recent Portland transplant from Chicago. She has previously worked as a production assistant at The Armory for productions of Tiny Beautiful Things, The Second City's A Christmas Carol: Twist Your Dickens, and A Life. Regional and Chicago stage management credits include: Silent Night, The Cunning Little Vixen, Porgy and Bess (The Glimmerglass Festival), Little Shop of Horrors (American Blues Theater); Civility! (The Syndicate); Ellen Bond, Union Spy (The House Theatre of Chicago); Love's Labour's Lost, Belleville, Urinetown: The Musical (The University of Chicago). Sarah is thrilled to be continuing her education as a stage management apprentice this season.
Next Entry:
The World of the Play: "The Breath of Life"
Previous Entry:
"Native Gardens" Cast & Creative Team


text:
The Italian Sea Group was awarded Perini Navi for 80 million Euros
Letyourboat, how to earn money by keeping your boat moored!
Sacs Tecnorib Spa: Italian Maxi RIBs target the global market
Published by admin at 29 December 2021
italian sea group
perini navi
The Italian Sea Group Perini Navi
In the end an Italian brand will be the new owner of Perini Navi. Giovanni Costantino's The Italian Sea Group (whose partners include Giorgio Armani) won the auction to take over the historic brand of sailing megayachts made in Italy, beating San Lorenzo and Ferretti (which had formed the equal joint venture Restart S.p.A).
The Italian Sea Group acquires Perini Navi
"The Italian Sea Group S.p.A. ("TISG" or the "Company"), global operator in the luxury yachting industry, through its 100%
subsidiary New Sail s.r.l., won the Auction held by the Lucca Court for the bankruptcy of Perini Navi S.p.A., at an overall price of 80 million Euros", says the official press release.
The Italian Sea Group and Perini assets
As indicated in the previous press releases, the auction includes the industrial and real estate assets of the shipyards in Viareggio and La Spezia, the building complex in Pisa, one vessel under construction (project n. 2369), trademarks and patents, the social participation (100%) of Perini Navi USA Inc. and the existing legal relationships with employees and third parties.
TISG will finance the operation through cash availability, re-investing a significant portion of IPO proceeds collected at the beginning of June, as well as bank funding lines.
The Italian Sea Group and Perini Navi: the advantages
What does the acquisition of Perini Navi bring to The Italian Sea Group? The group has demonstrated its great ability to enhance the value of its acquired assets and brands, as demonstrated by the strong growth achieved through the relaunch of Admiral and Tecnomar. But Perini Navi certainly has a lot to offer the group:
A proven track record in the enhancement of assets and brands, as demonstrated by the strong growth achieved through the Admiral and Tecnomar brand relaunches
A considerable number of professionalities / people who had worked for Perini Navi, recruiteded by The Italian Sea Group in the last year, who factually contribute to create and cement an internal culture in the 2 construction and refit of sailing yacht projects: the integration of additional employees from Perini Navi will therefore be quick and effective
Unparalleled track record in the refit of Perini Navi sailing yachts, with around 50% of the brand's yachts having passed through The Italian Sea Group shipyard. It is expected that Perini Navi S.p.A.'s integration could bring several benefits to the Group:
Expansion of production capacity which will allow the order intake for the refit to double and will lead to the acquisition of new contracts for the construction of 90-130 metre motor yachts;
Larger-than-expected orders
"I am very proud of this operation. We wanted to push forward with the investment, but we have approached the auction with absolute determination to acquire all of the asset considering our consolidated competence and the new contracts, in particular in the segment of large sailing yachts." commented Giovanni Costantino, The Italian Sea Group Founder & CEO. "The new production spaces will allow us to increase incoming order for the future in a very dynamic segment, as proven by the two orders for sailing yachts that we signed in December. We are therefore confident to have made the right decision, driven by an incoming order that has exceeded expectations by 50%.
The Perini Navi acquisition represents an achievement with exceptional strategic importance for the Company's future, as it continues to expand its horisons in an objective to increase production capacity to accommodate the growth in new orders and a significant increase in demand.
With this need for growth, partially covered through the two investment plans TISG 4.0 and TISG 4.1, there is also the great strategic opportunity represented by the prestigious Perini Navi brand, which will allow the Company to expand and strengthen its positioning in the large sailing yacht segment, in which it is already strongly active.
In December 2021, TISG has signed contracts for two sailing ketches with a length of 56 metres, which add to the project under costruction Art Explora, a sailing catamaran among the biggest in the world, a project with high cultural level and sustainable innovation. The Company had already acquired from the Perini Navi bankruptcy two projects in progress, which are going to be completed through the NCA Refit division, which 3 has already operated in the refitting of Perini Navi vessels, as demonstrated by the four yachts currently present in the shipyard".


text:
#include "tuple_compare.h"
#include "tuple.h"
#include "trivia/util.h" /* NOINLINE */

/* {{{ tuple_compare */

/*
 * Compare two tuple fields.
 * Separate version exists since compare is a very
 * often used operation, so any performance speed up
 * in it can have dramatic impact on the overall
 * performance.
 */
inline __attribute__((always_inline)) int
mp_compare_uint(const char **data_a, const char **data_b);

enum mp_class {
	MP_CLASS_NIL = 0,
	MP_CLASS_BOOL,
	MP_CLASS_NUMBER,
	MP_CLASS_STR,
	MP_CLASS_BIN,
	MP_CLASS_ARRAY,
	MP_CLASS_MAP
};

static enum mp_class mp_classes[] = {
	/* .MP_NIL     = */ MP_CLASS_NIL,
	/* .MP_UINT    = */ MP_CLASS_NUMBER,
	/* .MP_INT     = */ MP_CLASS_NUMBER,
	/* .MP_STR     = */ MP_CLASS_STR,
	/* .MP_BIN     = */ MP_CLASS_BIN,
	/* .MP_ARRAY   = */ MP_CLASS_ARRAY,
	/* .MP_MAP     = */ MP_CLASS_MAP,
	/* .MP_BOOL    = */ MP_CLASS_BOOL,
	/* .MP_FLOAT   = */ MP_CLASS_NUMBER,
	/* .MP_DOUBLE  = */ MP_CLASS_NUMBER,
	/* .MP_BIN     = */ MP_CLASS_BIN
};

#define COMPARE_RESULT(a, b) (a < b ? -1 : a > b)

static enum mp_class
mp_classof(enum mp_type type)
{
	return mp_classes[type];
}

static int
mp_compare_bool(const char *field_a, const char *field_b)
{
	int a_val = mp_decode_bool(&field_a);
	int b_val = mp_decode_bool(&field_b);
	return COMPARE_RESULT(a_val, b_val);
}

static int
mp_compare_integer(const char *field_a, const char *field_b)
{
	enum mp_type a_type = mp_typeof(*field_a);
	enum mp_type b_type = mp_typeof(*field_b);
	assert(mp_classof(a_type) == MP_CLASS_NUMBER);
	assert(mp_classof(b_type) == MP_CLASS_NUMBER);
	if (a_type == MP_UINT) {
		uint64_t a_val = mp_decode_uint(&field_a);
		if (b_type == MP_UINT) {
			uint64_t b_val = mp_decode_uint(&field_b);
			return COMPARE_RESULT(a_val, b_val);
		} else {
			int64_t b_val = mp_decode_int(&field_b);
			if (b_val < 0)
				return 1;
			return COMPARE_RESULT(a_val, (uint64_t)b_val);
		}
	} else {
		int64_t a_val = mp_decode_int(&field_a);
		if (b_type == MP_UINT) {
			uint64_t b_val = mp_decode_uint(&field_b);
			if (a_val < 0)
				return -1;
			return COMPARE_RESULT((uint64_t)a_val, b_val);
		} else {
			int64_t b_val = mp_decode_int(&field_b);
			return COMPARE_RESULT(a_val, b_val);
		}
	}
}

#define EXP2_53 9007199254740992.0      /* 2.0 ^ 53 */
#define EXP2_64 1.8446744073709552e+19  /* 2.0 ^ 64 */

/*
 * Compare LHS with RHS, return a value <0, 0 or >0 depending on the
 * comparison result (strcmp-style).
 * Normally, K==1. If K==-1, the result is inverted (as if LHS and RHS
 * were swapped).
 * K is needed to enable tail call optimization in Release build.
 * NOINLINE attribute was added to avoid aggressive inlining which
 * resulted in over 2Kb code size for mp_compare_number.
 */
NOINLINE static int
mp_compare_double_uint64(double lhs, uint64_t rhs, int k)
{
	assert(k==1 || k==-1);
	/*
	 * IEEE double represents 2^N precisely.
	 * The value below is 2^53.  If a double exceeds this threshold,
	 * there's no fractional part. Moreover, the "next" float is
	 * 2^53+2, i.e. there's not enough precision to encode even some
	 * "odd" integers.
	 * Note: ">=" is important, see next block.
	 */
	if (lhs >= EXP2_53) {
		/*
		 * The value below is 2^64.
		 * Note: UINT64_MAX is 2^64-1, hence ">="
		 */
		if (lhs >= EXP2_64)
			return k;
		/* Within [2^53, 2^64) double->uint64_t is lossless. */
		assert((double)(uint64_t)lhs == lhs);
		return k*COMPARE_RESULT((uint64_t)lhs, rhs);
	}
	/*
	 * If RHS < 2^53, uint64_t->double is lossless.
	 * Otherwize the value may get rounded.	 It's unspecified
	 * whether it gets rounded up or down, i.e. the conversion may
	 * yield 2^53 for a RHS > 2^53.
	 * Since we've aready ensured that LHS < 2^53, the result is
	 * still correct even if rounding happens.
	 */
	assert(lhs < EXP2_53);
	assert((uint64_t)(double)rhs == rhs || rhs > (uint64_t)EXP2_53);
	return k*COMPARE_RESULT(lhs, (double)rhs);
}

static int
mp_compare_double_any_int(double lhs, const char *rhs, enum mp_type rhs_type,
			  int k)
{
	if (rhs_type == MP_INT) {
		int64_t v = mp_decode_int(&rhs);
		if (v < 0) {
			return mp_compare_double_uint64(-lhs, (uint64_t)-v,
							-k);
		}
		return mp_compare_double_uint64(lhs, (uint64_t)v, k);
	}
	assert(rhs_type == MP_UINT);
	return mp_compare_double_uint64(lhs, mp_decode_uint(&rhs), k);
}

static int
mp_compare_double_any_number(double lhs, const char *rhs,
			     enum mp_type rhs_type, int k)
{
	double v;
	if (rhs_type == MP_FLOAT)
		v = mp_decode_float(&rhs);
	else if (rhs_type == MP_DOUBLE)
		v = mp_decode_double(&rhs);
	else
		return mp_compare_double_any_int(lhs, rhs, rhs_type, k);
	return k*COMPARE_RESULT(lhs, v);
}

static int
mp_compare_number(const char *lhs, const char *rhs)
{
	enum mp_type lhs_type = mp_typeof(*lhs);
	enum mp_type rhs_type = mp_typeof(*rhs);
	assert(mp_classof(lhs_type) == MP_CLASS_NUMBER);
	assert(mp_classof(rhs_type) == MP_CLASS_NUMBER);

	if (rhs_type == MP_FLOAT) {
		return mp_compare_double_any_number(
			mp_decode_float(&rhs), lhs, lhs_type, -1
		);
	}
	if (rhs_type == MP_DOUBLE) {
		return mp_compare_double_any_number(
			mp_decode_double(&rhs), lhs, lhs_type, -1
		);
	}
	assert(rhs_type == MP_INT || rhs_type == MP_UINT);
	if (lhs_type == MP_FLOAT) {
		return mp_compare_double_any_int(
			mp_decode_float(&lhs), rhs, rhs_type, 1
		);
	}
	if (lhs_type == MP_DOUBLE) {
		return mp_compare_double_any_int(
			mp_decode_double(&lhs), rhs, rhs_type, 1
		);
	}
	assert(lhs_type == MP_INT || lhs_type == MP_UINT);
	return mp_compare_integer(lhs, rhs);
}

static inline int
mp_compare_str(const char *field_a, const char *field_b)
{
	uint32_t size_a = mp_decode_strl(&field_a);
	uint32_t size_b = mp_decode_strl(&field_b);
	int r = memcmp(field_a, field_b, MIN(size_a, size_b));
	if (r != 0)
		return r;
	return COMPARE_RESULT(size_a, size_b);
}

static inline int
mp_compare_bin(const char *field_a, const char *field_b)
{
	uint32_t size_a = mp_decode_binl(&field_a);
	uint32_t size_b = mp_decode_binl(&field_b);
	int r = memcmp(field_a, field_b, MIN(size_a, size_b));
	if (r != 0)
		return r;
	return COMPARE_RESULT(size_a, size_b);
}

typedef int (*mp_compare_f)(const char *, const char *);
static mp_compare_f mp_class_comparators[] = {
	/* .MP_CLASS_NIL    = */ NULL,
	/* .MP_CLASS_BOOL   = */ mp_compare_bool,
	/* .MP_CLASS_NUMBER = */ mp_compare_number,
	/* .MP_CLASS_STR    = */ mp_compare_str,
	/* .MP_CLASS_BIN    = */ mp_compare_bin,
	/* .MP_CLASS_ARRAY  = */ NULL,
	/* .MP_CLASS_MAP    = */ NULL,
};

static int
mp_compare_scalar(const char *field_a, const char *field_b)
{
	enum mp_type a_type = mp_typeof(*field_a);
	enum mp_type b_type = mp_typeof(*field_b);
	enum mp_class a_class = mp_classof(a_type);
	enum mp_class b_class = mp_classof(b_type);
	if (a_class != b_class)
		return COMPARE_RESULT(a_class, b_class);
	mp_compare_f cmp = mp_class_comparators[a_class];
	assert(cmp != NULL);
	return cmp(field_a, field_b);
}

/**
 * @brief Compare two fields parts using a type definition
 * @param field_a field
 * @param field_b field
 * @param field_type field type definition
 * @retval 0  if field_a == field_b
 * @retval <0 if field_a < field_b
 * @retval >0 if field_a > field_b
 */
static int
tuple_compare_field(const char *field_a, const char *field_b,
		    int8_t type)
{
	switch (type) {
	case FIELD_TYPE_UNSIGNED:
		return mp_compare_uint(field_a, field_b);
	case FIELD_TYPE_STRING:
		return mp_compare_str(field_a, field_b);
	case FIELD_TYPE_INTEGER:
		return mp_compare_integer(field_a, field_b);
	case FIELD_TYPE_NUMBER:
		return mp_compare_number(field_a, field_b);
	case FIELD_TYPE_SCALAR:
		return mp_compare_scalar(field_a, field_b);
	default:
		unreachable();
		return 0;
	}
}

static int
tuple_compare_slowpath_raw(const struct tuple_format *format_a,
			   const char *tuple_a, const uint32_t *field_map_a,
			   const struct tuple_format *format_b,
			   const char *tuple_b, const uint32_t *field_map_b,
			   const struct key_def *key_def)
{
	const struct key_part *part = key_def->parts;
	if (key_def->part_count == 1 && part->fieldno == 0) {
		mp_decode_array(&tuple_a);
		mp_decode_array(&tuple_b);
		return tuple_compare_field(tuple_a, tuple_b, part->type);
	}

	const struct key_part *end = part + key_def->part_count;
	const char *field_a;
	const char *field_b;
	int r = 0;

	for (; part < end; part++) {
		field_a = tuple_field_raw(format_a, tuple_a, field_map_a,
					  part->fieldno);
		field_b = tuple_field_raw(format_b, tuple_b, field_map_b,
					  part->fieldno);
		assert(field_a != NULL && field_b != NULL);
		if ((r = tuple_compare_field(field_a, field_b, part->type)))
			break;
	}
	return r;
}

static int
tuple_compare_slowpath(const struct tuple *tuple_a, const struct tuple *tuple_b,
		       const struct key_def *key_def)
{
	return tuple_compare_slowpath_raw(tuple_format(tuple_a),
					  tuple_data(tuple_a),
					  tuple_field_map(tuple_a),
					  tuple_format(tuple_b),
					  tuple_data(tuple_b),
					  tuple_field_map(tuple_b), key_def);
}

static inline int
key_compare_parts(const char *key_a, const char *key_b, uint32_t part_count,
		  const struct key_part *parts)
{
	assert((key_a != NULL && key_b != NULL) || part_count == 0);
	const struct key_part *part = parts;
	if (likely(part_count == 1))
		return tuple_compare_field(key_a, key_b, part->type);
	const struct key_part *end = part + part_count;
	int r = 0; /* Part count can be 0 in wildcard searches. */
	for (; part < end; part++) {
		r = tuple_compare_field(key_a, key_b, part->type);
		if (r != 0)
			break;
		mp_next(&key_a);
		mp_next(&key_b);
	}
	return r;
}

int
key_compare(const char *key_a, const char *key_b,
	    const struct key_def *key_def)
{
	uint32_t part_count_a = mp_decode_array(&key_a);
	uint32_t part_count_b = mp_decode_array(&key_b);
	assert(part_count_a <= key_def->part_count);
	assert(part_count_b <= key_def->part_count);
	uint32_t part_count = MIN(part_count_a, part_count_b);
	assert(part_count <= key_def->part_count);
	return key_compare_parts(key_a, key_b, part_count, key_def->parts);
}

static int
tuple_compare_with_key_sequential(const struct tuple *tuple, const char *key,
				  uint32_t part_count,
				  const struct key_def *key_def)
{
	assert(key_def_is_sequential(key_def));
	const char *tuple_key = tuple_data(tuple);
	uint32_t tuple_field_count = mp_decode_array(&tuple_key);
	assert(tuple_field_count >= key_def->part_count);
	assert(part_count <= key_def->part_count);
	(void) tuple_field_count;
	return key_compare_parts(tuple_key, key, part_count, key_def->parts);
}

static int
tuple_compare_sequential(const struct tuple *tuple_a,
			 const struct tuple *tuple_b,
			 const struct key_def *key_def)
{
	assert(key_def_is_sequential(key_def));
	const char *key_a = tuple_data(tuple_a);
	uint32_t field_count_a = mp_decode_array(&key_a);
	assert(field_count_a >= key_def->part_count);
	(void) field_count_a;
	const char *key_b = tuple_data(tuple_b);
	uint32_t field_count_b = mp_decode_array(&key_b);
	assert(field_count_b >= key_def->part_count);
	(void) field_count_b;
	return key_compare_parts(key_a, key_b, key_def->part_count,
				 key_def->parts);
}

static inline int
tuple_compare_with_key_slowpath_raw(const struct tuple_format *format,
				    const char *tuple, const uint32_t *field_map,
				    const char *key, uint32_t part_count,
				    const struct key_def *key_def)
{
	assert(key != NULL || part_count == 0);
	assert(part_count <= key_def->part_count);
	const struct key_part *part = key_def->parts;
	if (likely(part_count == 1)) {
		const char *field;
		field = tuple_field_raw(format, tuple, field_map,
					part->fieldno);
		return tuple_compare_field(field, key, part->type);
	}

	const struct key_part *end = part + MIN(part_count, key_def->part_count);
	int r = 0; /* Part count can be 0 in wildcard searches. */
	for (; part < end; part++) {
		const char *field;
		field = tuple_field_raw(format, tuple, field_map,
					part->fieldno);
		r = tuple_compare_field(field, key, part->type);
		if (r != 0)
			break;
		mp_next(&key);
	}
	return r;
}

static int
tuple_compare_with_key_slowpath(const struct tuple *tuple, const char *key,
			        uint32_t part_count,
			        const struct key_def *key_def)
{
	return tuple_compare_with_key_slowpath_raw(tuple_format(tuple),
						   tuple_data(tuple),
						   tuple_field_map(tuple), key,
						   part_count, key_def);
}

template <int TYPE>
static inline int
field_compare(const char **field_a, const char **field_b);

template <>
inline int
field_compare<FIELD_TYPE_UNSIGNED>(const char **field_a, const char **field_b)
{
	return mp_compare_uint(*field_a, *field_b);
}

template <>
inline int
field_compare<FIELD_TYPE_STRING>(const char **field_a, const char **field_b)
{
	uint32_t size_a, size_b;
	size_a = mp_decode_strl(field_a);
	size_b = mp_decode_strl(field_b);
	int r = memcmp(*field_a, *field_b, MIN(size_a, size_b));
	if (r == 0)
		r = size_a < size_b ? -1 : size_a > size_b;
	return r;
}

template <int TYPE>
static inline int
field_compare_and_next(const char **field_a, const char **field_b);

template <>
inline int
field_compare_and_next<FIELD_TYPE_UNSIGNED>(const char **field_a,
					    const char **field_b)
{
	int r = mp_compare_uint(*field_a, *field_b);
	mp_next(field_a);
	mp_next(field_b);
	return r;
}

template <>
inline int
field_compare_and_next<FIELD_TYPE_STRING>(const char **field_a,
					  const char **field_b)
{
	uint32_t size_a, size_b;
	size_a = mp_decode_strl(field_a);
	size_b = mp_decode_strl(field_b);
	int r = memcmp(*field_a, *field_b, MIN(size_a, size_b));
	if (r == 0)
		r = size_a < size_b ? -1 : size_a > size_b;
	*field_a += size_a;
	*field_b += size_b;
	return r;
}

/* Tuple comparator */
namespace /* local symbols */ {

template <int IDX, int TYPE, int ...MORE_TYPES> struct FieldCompare { };

/**
 * Common case.
 */
template <int IDX, int TYPE, int IDX2, int TYPE2, int ...MORE_TYPES>
struct FieldCompare<IDX, TYPE, IDX2, TYPE2, MORE_TYPES...>
{
	inline static int compare(const struct tuple *tuple_a,
				  const struct tuple *tuple_b,
				  const struct tuple_format *format_a,
				  const struct tuple_format *format_b,
				  const char *field_a,
				  const char *field_b)
	{
		int r;
		/* static if */
		if (IDX + 1 == IDX2) {
			if ((r = field_compare_and_next<TYPE>(&field_a,
							      &field_b)) != 0)
				return r;
		} else {
			if ((r = field_compare<TYPE>(&field_a, &field_b)) != 0)
				return r;
			field_a = tuple_field_raw(format_a, tuple_data(tuple_a),
						  tuple_field_map(tuple_a),
						  IDX2);
			field_b = tuple_field_raw(format_b, tuple_data(tuple_b),
						  tuple_field_map(tuple_b),
						  IDX2);
		}
		return FieldCompare<IDX2, TYPE2, MORE_TYPES...>::
			compare(tuple_a, tuple_b, format_a,
				format_b, field_a, field_b);
	}
};

template <int IDX, int TYPE>
struct FieldCompare<IDX, TYPE>
{
	inline static int compare(const struct tuple *,
				  const struct tuple *,
				  const struct tuple_format *,
				  const struct tuple_format *,
				  const char *field_a,
				  const char *field_b)
	{
		return field_compare<TYPE>(&field_a, &field_b);
	}
};

/**
 * header
 */
template <int IDX, int TYPE, int ...MORE_TYPES>
struct TupleCompare
{
	static int compare(const struct tuple *tuple_a,
			   const struct tuple *tuple_b,
			   const struct key_def *)
	{
		struct tuple_format *format_a = tuple_format(tuple_a);
		struct tuple_format *format_b = tuple_format(tuple_b);
		const char *field_a, *field_b;
		field_a = tuple_field_raw(format_a, tuple_data(tuple_a),
					  tuple_field_map(tuple_a), IDX);
		field_b = tuple_field_raw(format_b, tuple_data(tuple_b),
					  tuple_field_map(tuple_b), IDX);
		return FieldCompare<IDX, TYPE, MORE_TYPES...>::
			compare(tuple_a, tuple_b, format_a,
				format_b, field_a, field_b);
	}
};

template <int TYPE, int ...MORE_TYPES>
struct TupleCompare<0, TYPE, MORE_TYPES...> {
	static int compare(const struct tuple *tuple_a,
			   const struct tuple *tuple_b,
			   const struct key_def *)
	{
		struct tuple_format *format_a = tuple_format(tuple_a);
		struct tuple_format *format_b = tuple_format(tuple_b);
		const char *field_a = tuple_data(tuple_a);
		const char *field_b = tuple_data(tuple_b);
		mp_decode_array(&field_a);
		mp_decode_array(&field_b);
		return FieldCompare<0, TYPE, MORE_TYPES...>::compare(tuple_a, tuple_b,
					format_a, format_b, field_a, field_b);
	}
};
} /* end of anonymous namespace */

struct comparator_signature {
	tuple_compare_t f;
	uint32_t p[64];
};
#define COMPARATOR(...) \
	{ TupleCompare<__VA_ARGS__>::compare, { __VA_ARGS__, UINT32_MAX } },

/**
 * field1 no, field1 type, field2 no, field2 type, ...
 */
static const comparator_signature cmp_arr[] = {
	COMPARATOR(0, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_UNSIGNED)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_STRING)
	COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_STRING)
};

#undef COMPARATOR

tuple_compare_t
tuple_compare_create(const struct key_def *def) {
	for (uint32_t k = 0; k < sizeof(cmp_arr) / sizeof(cmp_arr[0]); k++) {
		uint32_t i = 0;
		for (; i < def->part_count; i++)
			if (def->parts[i].fieldno != cmp_arr[k].p[i * 2] ||
			    def->parts[i].type != cmp_arr[k].p[i * 2 + 1])
				break;
		if (i == def->part_count && cmp_arr[k].p[i * 2] == UINT32_MAX)
			return cmp_arr[k].f;
	}
	if (key_def_is_sequential(def))
		return tuple_compare_sequential;
	return tuple_compare_slowpath;
}

/* }}} tuple_compare */

/* {{{ tuple_compare_with_key */

template <int TYPE>
static inline int field_compare_with_key(const char **field, const char **key);

template <>
inline int
field_compare_with_key<FIELD_TYPE_UNSIGNED>(const char **field, const char **key)
{
	return mp_compare_uint(*field, *key);
}

template <>
inline int
field_compare_with_key<FIELD_TYPE_STRING>(const char **field, const char **key)
{
	uint32_t size_a, size_b;
	size_a = mp_decode_strl(field);
	size_b = mp_decode_strl(key);
	int r = memcmp(*field, *key, MIN(size_a, size_b));
	if (r == 0)
		r = size_a < size_b ? -1 : size_a > size_b;
	return r;
}

template <int TYPE>
static inline int
field_compare_with_key_and_next(const char **field_a, const char **field_b);

template <>
inline int
field_compare_with_key_and_next<FIELD_TYPE_UNSIGNED>(const char **field_a,
						     const char **field_b)
{
	int r = mp_compare_uint(*field_a, *field_b);
	mp_next(field_a);
	mp_next(field_b);
	return r;
}

template <>
inline int
field_compare_with_key_and_next<FIELD_TYPE_STRING>(const char **field_a,
					const char **field_b)
{
	uint32_t size_a, size_b;
	size_a = mp_decode_strl(field_a);
	size_b = mp_decode_strl(field_b);
	int r = memcmp(*field_a, *field_b, MIN(size_a, size_b));
	if (r == 0)
		r = size_a < size_b ? -1 : size_a > size_b;
	*field_a += size_a;
	*field_b += size_b;
	return r;
}

/* Tuple with key comparator */
namespace /* local symbols */ {

template <int FLD_ID, int IDX, int TYPE, int ...MORE_TYPES>
struct FieldCompareWithKey {};
/**
 * common
 */
template <int FLD_ID, int IDX, int TYPE, int IDX2, int TYPE2, int ...MORE_TYPES>
struct FieldCompareWithKey<FLD_ID, IDX, TYPE, IDX2, TYPE2, MORE_TYPES...>
{
	inline static int
	compare(const struct tuple *tuple, const char *key,
		uint32_t part_count, const struct key_def *key_def,
		const struct tuple_format *format, const char *field)
	{
		int r;
		/* static if */
		if (IDX + 1 == IDX2) {
			r = field_compare_with_key_and_next<TYPE>(&field, &key);
			if (r || part_count == FLD_ID + 1)
				return r;
		} else {
			r = field_compare_with_key<TYPE>(&field, &key);
			if (r || part_count == FLD_ID + 1)
				return r;
			field = tuple_field_raw(format, tuple_data(tuple),
						tuple_field_map(tuple), IDX2);
			mp_next(&key);
		}
		return FieldCompareWithKey<FLD_ID + 1, IDX2, TYPE2, MORE_TYPES...>::
				compare(tuple, key, part_count,
					       key_def, format, field);
	}
};

template <int FLD_ID, int IDX, int TYPE>
struct FieldCompareWithKey<FLD_ID, IDX, TYPE> {
	inline static int compare(const struct tuple *,
					 const char *key,
					 uint32_t,
					 const struct key_def *,
					 const struct tuple_format *,
					 const char *field)
	{
		return field_compare_with_key<TYPE>(&field, &key);
	}
};

/**
 * header
 */
template <int FLD_ID, int IDX, int TYPE, int ...MORE_TYPES>
struct TupleCompareWithKey
{
	static int
	compare(const struct tuple *tuple, const char *key,
		uint32_t part_count, const struct key_def *key_def)
	{
		/* Part count can be 0 in wildcard searches. */
		if (part_count == 0)
			return 0;
		struct tuple_format *format = tuple_format(tuple);
		const char *field = tuple_field_raw(format, tuple_data(tuple),
						    tuple_field_map(tuple),
						    IDX);
		return FieldCompareWithKey<FLD_ID, IDX, TYPE, MORE_TYPES...>::
				compare(tuple, key, part_count,
					key_def, format, field);
	}
};

template <int TYPE, int ...MORE_TYPES>
struct TupleCompareWithKey<0, 0, TYPE, MORE_TYPES...>
{
	static int compare(const struct tuple *tuple,
				  const char *key,
				  uint32_t part_count,
				  const struct key_def *key_def)
	{
		/* Part count can be 0 in wildcard searches. */
		if (part_count == 0)
			return 0;
		struct tuple_format *format = tuple_format(tuple);
		const char *field = tuple_data(tuple);
		mp_decode_array(&field);
		return FieldCompareWithKey<0, 0, TYPE, MORE_TYPES...>::
			compare(tuple, key, part_count,
				key_def, format, field);
	}
};

} /* end of anonymous namespace */

struct comparator_with_key_signature
{
	tuple_compare_with_key_t f;
	uint32_t p[64];
};

#define KEY_COMPARATOR(...) \
	{ TupleCompareWithKey<0, __VA_ARGS__>::compare, { __VA_ARGS__ } },

static const comparator_with_key_signature cmp_wk_arr[] = {
	KEY_COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_STRING)
	KEY_COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_STRING)
	KEY_COMPARATOR(0, FIELD_TYPE_UNSIGNED, 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_STRING)
	KEY_COMPARATOR(0, FIELD_TYPE_STRING  , 1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_STRING)

	KEY_COMPARATOR(1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_UNSIGNED)
	KEY_COMPARATOR(1, FIELD_TYPE_UNSIGNED, 2, FIELD_TYPE_STRING)
	KEY_COMPARATOR(1, FIELD_TYPE_STRING  , 2, FIELD_TYPE_STRING)
};

#undef KEY_COMPARATOR

tuple_compare_with_key_t
tuple_compare_with_key_create(const struct key_def *def)
{
	for (uint32_t k = 0;
	     k < sizeof(cmp_wk_arr) / sizeof(cmp_wk_arr[0]);
	     k++) {

		uint32_t i = 0;
		for (; i < def->part_count; i++) {
			if (def->parts[i].fieldno != cmp_wk_arr[k].p[i * 2] ||
			    def->parts[i].type != cmp_wk_arr[k].p[i * 2 + 1]) {
				break;
			}
		}
		if (i == def->part_count)
			return cmp_wk_arr[k].f;
	}
	if (key_def_is_sequential(def))
		return tuple_compare_with_key_sequential;
	return tuple_compare_with_key_slowpath;
}

/* }}} tuple_compare_with_key */

int
box_tuple_compare(const box_tuple_t *tuple_a, const box_tuple_t *tuple_b,
		  const box_key_def_t *key_def)
{
	return tuple_compare(tuple_a, tuple_b, key_def);
}


text:
Next Science, Technology & Medicine
Next Geography & The Environment
Next Geography
Next Geographical Discovery & Exploration
Geographical Discovery & Exploration 9780815411543-01-000 9780815411543-01-000 9780815411543
https://www.whsmith.co.uk/products/edge-of-the-world-ross-island-antarctica-a-personal-and-historical-nar/charles-neider/paperback/9780815411543-01-000.html
Edge of the World Ross Island, Antarctica A Personal and Historical Narrative of Exploration, Adventure, Tragedy, and Survival
By Charles Neider (Contributor)
https://www.whsmith.co.uk/products/edge-of-the-world-ross-island-antarctica-a-personal-and-historical-nar/charles-neider/paperback/9780815411543-01-000.html £13.95
Writer and explorer Charles Neider made his first trip to Antarctica in 1969, achieving a lifelong goal of seeing the frozen continent with his own eyes. During this visit and a return trip in 1970, both backed by the U. S. Navy and the National Science Foundation, Neider discovered the rigor and beauty of life so close to the South Pole. In addition to his own experiences, Edge of the World also contains Neider's accounts of Shakleton's and Scott's expeditions, and the story of his own helicopter crash and rescue on the slopes of Mt. Erebus. Neider's account is erudite, literate, and intensely personal. 60 Illustrations, unspecified
Charles Neider (1915-2001) edited Tolstoy: Tales of Courage and Conflict and Life As I Find It: A Treasury of Mark Twain Rarities, among many other books. Cooper Square Press has also published his fiction (The Grotto Berg: Two Novellas) and his recent memoir, Adam's Burden.
Contributor: Charles Neider
Imprint: Cooper Square Publishers Inc.,U.S.
Publisher: Cooper Square Publishers Inc.,U.S.
Biography: Charles Neider (1915-2001) edited Tolstoy: Tales of Courage and Conflict and Life As I Find It: A Treasury of Mark Twain Rarities, among many other books. Cooper Square Press has also published his fiction (The Grotto Berg: Two Novellas) and his recent memoir, Adam's Burden.
Charles Neider
https://www.whsmith.co.uk/products/edge-of-the-world-ross-island-antarctica-a-personal-and-historical-nar/charles-neider/paperback/9780815411543.html £13.95


Reliable Auction Services specializes in the processing of Garage Man's Lien. Our trained staff will guide you through the complete process of filing a lien and protecting your interest to collect monies you are owed. When a delinquent customer fails to pay charges due to you, a lien will be placed on your behalf by Reliable Auction Services. We will force your customer to pay your charges or the unit will be placed for sale, legally, at public auction services. We will then provide you with new proof of ownership. We are specialists in title applications.
Reliable Auction Services runs national title searches, then contacts both owners and lien holders by mailing out certified notifications of your company&squo;s possession of the vehicle, as well as accruing storage charges as allowed by law.
If you are paid back in full and the vehicle is picked up, our services will be provided AT NO COST TO YOU! We will simply add our fee to your customer's bill.
If this doesn't produce results, we will prepare the Garage Man's lien paperwork, which legally gives you the right to title or sell the vehicle in question.


text:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MoonSharp.Interpreter;
using MoonSharp.RemoteDebugger;

namespace NugetTests_net35
{
	public partial class Form1 : Form
	{
		string EXPECTEDVERSION = VERSION.NUMB;
		string EXPECTEDPLATF = "std.dotnet.clr2";

		string BASICSCRIPT = @"
function dodo(x, y, z)
	return tostring((x + y) * z);
end

return dodo;
";

		public Form1()
		{
			InitializeComponent();
		}

		private void Form1_Load(object sender, EventArgs e)
		{
			CheckString(lblVersion, EXPECTEDVERSION, Script.VERSION);
			CheckString(lblPlatform, EXPECTEDPLATF, Script.GlobalOptions.Platform.GetPlatformName());

			Script S = new Script();
			DynValue fn = S.DoString(BASICSCRIPT);
			string res = fn.Function.Call(2, 3, 4).String;

			CheckString(lblTestResult, "20", res);
		}

		private void CheckString(Label label, string expected, string actual)
		{
			label.Text = actual;

			if (actual != expected)
				label.ForeColor = Color.Red;
			else
				label.ForeColor = Color.Green;
		}

		private void button1_Click(object sender, EventArgs e)
		{
			Script S = new Script();
			DynValue fn = S.DoString(BASICSCRIPT);

			ActivateRemoteDebugger(S);

			string res = fn.Function.Call(2, 3, 4).String;

			CheckString(lblTestResult, "20", res);

		}

		RemoteDebuggerService remoteDebugger;

		private void ActivateRemoteDebugger(Script script)
		{
			if (remoteDebugger == null)
			{
				remoteDebugger = new RemoteDebuggerService();

				// the last boolean is to specify if the script is free to run
				// after attachment, defaults to false
				remoteDebugger.Attach(script, "Description of the script", false);
			}

			// start the web-browser at the correct url. Replace this or just
			// pass the url to the user in some way.
			Process.Start(remoteDebugger.HttpUrlStringLocalHost);
		}
	}
}


text:
Home World South Asia Muslims of India Raise Voices for Uighurs of China
Muslims of India Raise Voices for Uighurs of China
Nava Thakuria
Wed July 8, 2009
The apex body of Indian Muslims has come forward to condemn the brutality shown by the Chinese authority in the autonomous Xinjiang region in the last few days. "The All India Muslim Majlis-e Mushawarat, the umbrella body of Indian Muslim organizations, condemned the reign of terror unleashed by the Chinese security forces and the Chinese Han settlers in Xinjiang on the Uighur Muslims," a statement issued on July 7 from New Delhi said.
Mentionable that Xinjiang or the Eastern Turkestan, bordering Pakistan and Afghanistan is a traditional Muslim homeland. The Chinese authority has allegedly been trying to change its demography with continued state repression. The AIMMM President Dr Zafarul-Islam Khan, while speaking to this writer from New Delhi, argued that the persecution of the Uighur Muslims and the continuous attempts to change the area's demography by planting Han Chinese in the region are the real reasons behind the unrest.
Mentionable that, ethnic clashes between the minority Uighur people and the ethnic Han Chinese erupted in Urumqi (the capital of Xinjiang) on Sunday. According to the state run Xinhua News Agency, the unrest snatched away the live of at least 156 people. Media reports also reveal that over 800 people were injured in the clash, where as few hundred shops and vehicles were vandalized by over thousand protesters. The local authority has arrested over 1,400 Uighur Muslims in the follow up actions.
The Chinese government has constructed numerous roads, railways, schools and hospitals in the province, but even then many Uighurs continued demanding independence from Beijing. Moreover, the Uighurs also feel as being marginalized in their homeland, because of the Han people's rapid migration to Xinjiang.
The official Xinhua News Agency on July 6 however tried to report about the issue little differently saying, the 'tourism in northwest China's Xinjiang has come to a standstill after the riot in the regional capital Urumqi -'. Quoting Ma Rui, regional tourism bureau spokesman, the agency also claimed that the riot had a very bad influence on tourism, and the bureau told travel agencies not to go to sensitive areas.
Xinhua also interviewed Chen Guangyuan, president of the Islamic Association of China, who categorically slammed the riot in Xinjiang, saying it went against the basic doctrine of the Islam.
According to the Islamic teaching, the crime of killing one innocent person is equal to that of killing the whole mankind, Chen said. "As head of the IAC, I would express my severe condemnation and great indignation over it," quoting Chen Guangyuan the agency reported.
Russell Leigh Moses, an author who keeps an eye on the changing nature of power in China, highlighted that Uighurs' real grievances remain 'Beijing's tight control over the practice of Islam; Han Chinese who migrate to Xinjiang and take the better jobs there; and the fact that ethnic minorities lack regular access to the government bureaucracy, where business in China is largely done'.
"Religious practice, local customs and educational choices in Xinjiang are controlled by the state to a draconian degree. Mosques are being repaired and modernized, but children have not been allowed to attend services," he wrote in an article published by The New York Times.
"Beijing must realise that its way to prosperity and world status power does not go not through state terrorism seen earlier in its similarly brutal form in the 1989 crackdown in Tiananmen Square," said Dr Khan of AIMMM adding that China must stop the migration into Eastern Turkestan and allow its people to enjoy civil and human rights other Chinese enjoy.
Meanwhile, the United Nations' High Commissioner for Human Rights, Navi Pillay in a statement has urged the Chinese authorities and also the ethnic groups of Xinjiang to refrain from further violence.
Muslims of India
Nava Thakuria is a Guwahati (Northeast India) based journalist, who contributes to NewsBlaze and various media outlets throughout the world.
India Signs Historic Pact With Five Rebel Groups
Foul Play Suspected in Assam Elephant Deaths
Nepal Government Responds to Indian Climbers Accused of Faking Their Mount Everest Climb
Will the Pakistan Army Take Ownership of Our Problems?
The Counterproductive Role of The Army in Pakistan
Narender Singh Yadav's Award for Climbing the Everest Held for Investigations
Pakistani Court Allows Muslim Kidnapper to Keep Minor Christian Girl as Wife
Another View of the Oil Inferno in Assam
Public Uproar for Amazon of the East
South Asia News from PR Newswire
INFRASTRUCTURE SECTOR IN INDIA: AN ANALYSIS
Future of office furniture industry amidst the pandemic
World Categories


Use the LifeSecure® portable group emergency survival kit for evacuation, or to aid with shelter in-place for the first several hours following an emergency or disaster, depending upon the situation. High-visibility marking and flashing safety light provide easy visibility for quick access. Use as backpack or rolling pack with telescoping handle.


Shijiazhuang Chanming Biotechnology Co., Ltd.
Instruction Place eye mask into the refrigerator 1 hour before using. Q:HOW long do you package product once I made an order9 A:Our products are all packaged in standard exported cartons. you are welcome to contact us after sales services for product problems.
Gallery Gallery For more information,you can go to DAVID GROUP's Gallery (Click this yellow link) Many Surprises are waiting for you. We firmly believe DAVID GROUP will one of your best parterners in China. Payment & Shipping Payment & Shipping ,Trade Terms for Health Care Sleeping Eye Mask With Insert Gel Eye Mask Why Choose us9 Supply Base View of Health Care Sleeping Eye Mask With Insert Gel Eye Mask for Health Care Sleeping Eye Mask With Insert Gel Eye Mask Feedback & Feedback & about Health Care Sleeping Eye Mask With Insert Gel Eye Mask How to 9 Send your Inquiry Details in the Below, Click " Send " Now!
SZ Xintaixin Handbag Products Co., Ltd.
Alibaba.com offers 16,387 gel eye mask products. About 71% of these are eye mask, 4% are face mask, and 1% are pillow.
A wide variety of gel eye mask options are available to you, such as anti-puffiness, anti-wrinkle. You can also choose from ce, gmp, and fda. As well as from sheet, compressed, and powdered mask. And whether gel eye mask is free samples, or paid samples.
There are 16,175 gel eye mask suppliers, mainly located in Asia. The top supplying countries are China (Mainland), Taiwan, and South Korea, which supply 97%, 1%, and 1% of gel eye mask respectively.
Gel eye mask products are most popular in North America, Western Europe, and Eastern Europe.
You can ensure product safety by selecting from certified suppliers, including 16,307 with Other, 4,782 with ISO9001, and 2,463 with ISO13485 certification.


9/02/2016 · How to add multiple Instagram accounts. It's simple to add a new account from inside the app. Go to your profile, by tapping on the "head and shoulders" icon at the bottom right of the... Marketing your clothing line on Pinterest.com is a must because at the time of this article Pinterest is big in the online space while the Instagram App occupies a hugh mobile space.
Copy the text, line breaks and all. Open Instagram and post your photo and caption. After you've posted your photo, click the comment button, paste the text you copied in step 4 and click "Post".


From Del Rey: Young Akira has a destiny: He's a shiki tsukai, a warrior with the magical power to control the seasons. He also meets the beautiful Koyomi, another warrior, who is sworn to protect him. For there are evil forces intent on destroying Akira - and the entire universe!


This green Kershaw Ration XL is the perfect on the go untensil. It is like a spork; one end of the product has a spoon and the other has a fork. A bottle opener is included for on-the-go drinks as well as a clip for easy packing.


text:
512 Pixels on YouTube
Stephen Hackett loves old Macs. (And iPhones and iPods and Newtons.) His fascination with old Apple hardware and the passion to share it with a larger audience — many of whom weren't around for the dark days when Apple was doomed — is one of the things I love most about reading 512 Pixels.
He's slowly been expanding into video production with a channel on YouTube. The latest video covers the iPod Shuffle, the tiny iPod without a screen that Apple still sells. At just $49, it's not much more expensive than a long USB-C cable and may be the best bargain in Apple's lineup after the $399 iPhone SE. Stephen writes about the original Shuffle:
The first Shuffle was built like a glorified USB thumb drive. This new player was smaller than a pack of chewing gum, and built around the concept of shuffling your music. There was no need for a screen or a true clickwheel. If you wanted to listen to music in order, the switch on the back could be set to continuous playback.
Ah, nostalgia. One of the reasons I blog at all, and have been for 14 years now, isn't so much for today's audience but tomorrow's. Even the most mundane blog posts take on new significance with a few years' distance. Old technical topics have surprisingly poor representation on today's web, as linkrot sets in.
I'm looking forward to what else Stephen has planned. I know from the Connected podcast that lately he has been trying to collect all the different original iMac colors. (Two other podcasts that are worth a listen for an additional trip down memory lane: The Record and Simple Beep.)


text:
Editor Picks WTA
Caramel shortbread and gardening talks for locked down Katie Boulter
Roger Parker
Though Britain's Katie Boulter would rather have been continuing the successful return to form she was on after a long injury layoff prior to the pandemic lockdown in March, she feels she used her down time productively.
The 23 year old world number 85 told BBC Sport "I wouldn't say it's been the best time but I've definitely used it productively – I've tried to make it a positive situation,"
She is playing in her first post lockdown event, behind closed doors, the Progress Tour Women's Championships at the National Tennis Centre in Roehampton., an exhibition event that gives British players some competitive play before the WTA tour resumes on August 3 in Palermo.
Katie also unexpectedly found herself a flatmate, fellow player Laura Robson who apparently "makes excellent caramel shortbread"
"Laura's really into baking" says Boulter "but I'm not sure it's good for me having to eat cakes every single day of the lockdown!"
Robson was supposed to "house-sit" for Boulter while she was away on some tournaments before she herself ended up back there too.
Boulter is very close to her grandparents and as she unable to see them during lockdown so she decided to volunteer with the Age Concern UK Charity, talking on the phone with older people who were feeling lonely and needed support.
"I told them I was a Tennis player but I was much more interested in hearing about their gardening"
Asked if she approved of the innovative features added to the exhibition matches, such as headsets for on court interviews between TV commentators and players during changeovers she said "some of it is quite hard to do – having the headsets on court is quite interesting but at the same time when you're really in that match and it's not an exhibition I'm not sure how you're going to react to it."
"Other things like the lack of ball kids and line judges, may be with us for a while as the authorities try to limit the number of people on site at tournaments"
What about having to pick up your own balls at tour events?
"I don't mind doing it at all. It's normal for me to be doing it in practice, I do it every day of my life," she said. "Whatever makes it safe"
Boulter started her new campaign with straight set victories in her first two matches at Roehampton to reach the final where she will play Alicia Barnett.
Tags:#covid19, #kaiteboulter, #wta
Wimbledon winner Rybakina reaches AO final
AO Women: Day 10 review
Linette breaks through for first Slam semi


text:
Commercial Representation
Hiring & PEO
ECUADORIAN BUSINESS NEWS
How to Incorporate a Non-Governmental Organization (NGO) in Ecuador?
by Legal Team Ecuador | Jan 30, 2019 | Ecuador, LATAM
Ecuador is a beautiful country whose citizens are filled with a strong social conscience, allowing communities to dedicate themselves to social causes ranging from environmental...
Why Ecuador is the Best Jurisdiction for an Import / Export Company?
by International Trade Experts | Jan 14, 2019 | Ecuador, LATAM
Globalization and increasing competition have lead businesses to step outside of their native countries and expand into new markets to boost profitability and long-term...
Why You Should Incorporate and Set Up a Sales Office in Ecuador?
by Legal Team Ecuador | Jan 9, 2019 | Ecuador, LATAM
As globalization continues to change the world and encourage businesses to step outside of their comfort zones, expansion into Latin American markets is becoming more common. For...
Happy Christmas from Team Biz Latin Hub
by Team Latin America | Dec 25, 2018 | Argentina, Australia, Brazil, Central America, Chile, Colombia, Ecuador, LATAM, Mexico, Paraguay, Peru, Uruguay
At Biz Latin Hub, we believe in sharing great times with our loved ones during the Christmas period. For this reason, we are sending to our clients, employees, partners,...
Biz Latin Hub Expansion – New Office in Sydney, Australia
by Legal Team Australia | Dec 11, 2018 | Argentina, Australia, Brazil, Central America, Chile, Colombia, Costa Rica, Ecuador, El Salvador, LATAM, Mexico, Panama, Paraguay, Peru, Press Releases, Uruguay
Biz Latin Hub is proud and excited to announce the opening of our 12th office no less than 14,000 kilometers away from the first office that we opened 4 years ago in Bogotá,...
Essential Guide to Incorporate a Local Company in Ecuador
by Legal Team Ecuador | Dec 8, 2018 | Ecuador, LATAM
Having finally arrived on the other side of rather controversial trade policies put in place by the last government, Ecuador is a nation ready to prove itself an extremely...
International Trade Ecuador: Import Export, Legal Processes and Taxes
by International Trade Experts | Oct 14, 2018 | Ecuador, LATAM
The import and export sector in Ecuador is coming back to life. After some controversial measures applied by the former government to increase taxes with surcharges on imports to...
Ecuador Welcoming Foreign Investment Through New Legislation
by Legal Team Ecuador | Oct 1, 2018 | Ecuador, LATAM
Ecuador has made a crystal clear statement regarding the international business environment in recent years - we are opening up to the world and we want foreign investment. Few...
Steps to Create / Register a Foreign Branch Office in Ecuador
by Legal Team Ecuador | Sep 23, 2018 | Ecuador, LATAM
Great resources, an educated workforce, multiple opportunities and a quite frankly beautiful country; Ecuador has the potential to become one of the most important Latin American...
Biz Latin Hub Supports Australian Money Transfer Company in LATAM
by Team Latin America | Sep 20, 2018 | Argentina, Australia, Brazil, Central America, Chile, Colombia, Ecuador, LATAM, Mexico, Paraguay, Peru, Press Releases, Uruguay
The Biz Latin Hub Group has been selected by Australian international education payment services company, Nexpay, to provide company incorporation, legal representation,...
Happy 4th Anniversary To Our Group – Biz Latin Hub
by Team Latin America | Sep 17, 2018 | Argentina, Brazil, Central America, Chile, Colombia, Costa Rica, Ecuador, El Salvador, Guatemala, LATAM, Mexico, Panama, Peru, Press Releases, Uruguay
Today marks the 4th anniversary of Biz Latin Hub – 4 years of bringing business to Latin America. In early September 2014, our founders, Mr Craig Dempsey and Mr David Wright,...
Essential Corporate Secretarial Services in Ecuador
Ecuador is emerging more and more as one of the top investment destinations in Latin America. The region has an incredible variety of natural resources, a notoriously hardworking...
Different Types of Companies / Legal Entities in Ecuador
by Legal Team Ecuador | Aug 27, 2018 | Ecuador, LATAM
Business opportunities in Ecuador are becoming more and more enticing for foreign investors. The Ecuadorian government has been more than open in its intentions to attract...
Minimum Statutory Requirements for a Company / Legal Entity in Latin America
by Team Latin America | Aug 22, 2018 | Argentina, Brazil, Central America, Chile, Colombia, Costa Rica, Ecuador, El Salvador, LATAM, Mexico, Panama, Peru, Uruguay
Latin America has taken huge and positive economic strides over the past decade. What was once considered a region unfit for investment, has evolved into a commercial opportunity...
9 Key Steps to Create a Corporation in Ecuador
In recent years, Ecuador has opened its doors to foreign investment. The government has introduced various measures to increase foreign presence in Ecuador, an example being the...
BLH & ALABC Unite: Increased Business Ties Between Australia and Latin America
by Team Latin America | Aug 7, 2018 | Argentina, Australia, Brazil, Central America, Chile, Colombia, Ecuador, LATAM, Mexico, Paraguay, Peru, Press Releases, Uruguay
Latin America - 7th August 2018 Biz Latin Hub (BLH), the young Latin America market disrupter has united with the Australian Latin America Business Council (ALABC) through a...
Professional Employer Organisation (PEO) / Employer of Record Services – Latin America
by Team Latin America | Aug 2, 2018 | Argentina, Belize, Brazil, Central America, Chile, Colombia, Costa Rica, Ecuador, El Salvador, LATAM, Mexico, Panama, Peru, Uruguay
Today, more than ever before, the global economy is an open book. To truly establish yourself as a major player in whatever industry your company operates in, limiting yourself...
Meet the Team: The Ecuadorian Gentleman – Ernesto 'Neto' Teran
by Legal Team Ecuador | Aug 1, 2018 | Ecuador, LATAM, Meet the Team
Ernesto Alfredo Teran Cornejo, or simply 'Neto' to all that know him, is the Country Manager at Biz Latin Hub - Ecuador. He has had a long and illustrious career has been...
Individual Background Check / Due Diligence in Ecuador
by Legal Team Ecuador | Jul 29, 2018 | Ecuador, LATAM
Who you partner with/do business with or who you hire are probably the most important pieces of the great puzzle that is doing business abroad. The need to have absolutely clear...
Corporate Secretarial Services Latin America?
by Team Latin America | Jul 19, 2018 | Argentina, Brazil, Chile, Colombia, Ecuador, LATAM, Mexico, Peru
Latin America can be a somewhat complicated region for multinational companies in regards to compliance with corporate regulations, state legislation and bureaucratic obstacles....
– Belize
– El Salvador
– Panama
Industry Expert Q&A
Are you ready to expand globally? Let us support you.
Copyright 2020, Biz Latin Hub Group
This site uses cookies. By continuing to browse the site, you are agreeing to our use of cookies. I agreeRead more


text:
What About Our Girls??
January 11, 2019 Category: Local Posted by: Philadelphia Sun Staff
The documentary "Surviving R. Kelly" brought the issue of sexual and domestic abuse in the Black community to the forefront. But what happens next?
By Denise Clay
Right now, thanks to the Lifetime documentary "Surviving R. Kelly", you couldn't blame the R&B superstar for wanting to be anyone else.
On Tuesday, Gerald Griggs, the Atlanta-based lawyer for Timothy and JonJelyn Savage — the parents of a young woman Kelly is alleged to have sexually abused and imprisoned and who are featured in the documentary — told the Associated Press that he had been contacted by the Fulton County prosecutor's office regarding Kelly's relationship with the Savage's daughter, Jocelyn.
Timothy and JonJelyn Savage
Prosecutors in Cook County, Illinois, where Kelly was tried and acquitted of child pornography charges in 2008, are also asking women with claims of abuse by Kelly to come forward.
Kelly's also being denounced by many of the performers he has worked with including Chance The Rapper, and most notably, singer/actress Lady Gaga, herself a survivor of sexual assault, who now says she "regrets" her 2013 collaboration with Kelly, "Do What You Want (With My Body)."
Dream Hampton
"What I am hearing about the allegations against R. Kelly is absolutely horrifying and indefensible," she said in a statement on social media. "I think it's clear how explicitly twisted my thinking was at the time. If I could go back and have a talk with my younger self, I'd tell her to go through the therapy I have since then, so that I could understand the confused post-traumatic state that I was in. I can't go back, but I can go forward and continue to support women, men, and people of all sexual identities, and of all races, who are victims of sexual assault."
The three-night, six part documentary co-executive-produced by journalist dream hampton and based on much of her reporting, features women who have in many cases been telling their stories of mental and physical abuse, sexual assault and trauma at the singer's hand for years.
Kelly has denied all of the allegations and is hoping to put together a website, "Surviving Lies" to refute them. He had initially tried doing it as a Facebook page, but the page was shut down.
The documentary has spurred more of the same long overdue conversations that were starting to be had during comedian Bill Cosby's sexual assault trial. Cosby was convicted in 2018 for sexually assaulting former Temple University employee Andrea Constand and is currently serving a 3-to-10 year sentence for his crimes.
What makes this series of conversations different, however, is the centering of Black women, which is what all of Kelly's alleged victims have in common, said Laquisha Anthony, an education and training specialist for Women Organized Against Rape and founder of V.O.I.C.E (Victory Over Inconceivable Cowardly Experiences.)
"We've had some mixed reactions," she said regarding the calls WOAR has had since the documentary's airing. "A lot of survivors have been triggered by this, but it's led to a community conversation that's allowing the voices of Black women to be amplified," she said.
Stephanie "Sparkle" Edwards
One of those women is Stephanie "Sparkle" Edwards, an R&B singer who worked on the song "Be Careful" with Kelly in the 90s. She met Kelly in 1989 while he was working with Billy Ocean through a girlfriend and went on to do background vocals for much of "Age Ain't Nothing But A Number", the debut album of the late singer Aaliyah. It was revealed in the documentary that Aaliyah and Kelly were married with the help of doctored identification when she was 15.
Edwards didn't hear the stories alleging inappropriate conduct between Kelly and the young women he worked with until she left his camp in 1999 due to creative differences. After that, members of his circle called her and said that things between he and one of his protégés, her niece, didn't look kosher.
When the tape of Kelly allegedly demeaning a young girl while having sex with her surfaced and went nationwide, it broke her heart.
The girl was her niece, and that revelation led to a schism in the family.
"When I called my sister, it wasn't a good conversation," Edwards said. "I was estranged from my family for 10 years because of this. But at first, I didn't see anything, because I wasn't looking for anything. Her uncle [a musician who played with Kelly] and parents were around. I didn't think anything would happen."
When she was initially approached by hampton for the documentary, Edwards said no, citing the rift this had caused in her family. But once the documentary aired, she heard many of the same reactions that came out during the Cosby trial, reactions that actually put the victims on trial.
During the documentary's airing, streaming requests for R. Kelly's music went up by 16 percent on Spotify. Social media was filled with men like Tariq Nasheed, who charged the filmmakers and Lifetime with using the media to defame a Black man, similar to what was alleged during the Cosby Trial.
Some Blacks even alleged that other men brought down by the #MeToo movement such as Harvey Weinstein and Kevin Spacey were getting off light because there was no documentary about their exploits, despite the fact that a simple Google search would have shown there was.
Laquisha Anthony
Those reactions were head scratching to many.
"I'm not surprised, but I'm baffled by it," Edwards said. "When I was dealing with it way back when, I used to hear things like 'These girls are fast!' I hated to hear that. Don't turn these girls away. They have enough to deal with because of what's happened to them. My niece is beautiful on the outside, but I know that she's screaming on the inside. She's screaming."
But what happens after the memory of the documentary has faded and a new celebrity scandal has come to take the R. Kelly scandal's place?
It's a matter of making people understand that what happened to the girls and women in "Surviving R. Kelly" can happen anywhere, even Philadelphia.
"We need to make sure that we're having conversations about sexual violence across the board in our everyday communities," Anthony of WOAR said. "We keep this in the public eye by hosting forums, utilizing education and prevention services, and allowing people to be educated so that we can keep the issue out there."
The media also has a role to play, said Ernest Owens, vice president-print of the Philadelphia Association of Black Journalists. For journalists overall, and journalists of color in particular, asking tough questions about these issues is important.
"We have a responsibility to ask these questions," Owens continued. "We have to inform the public. A lot of Black journalists in dealing with public figures are sometime afraid of tearing a person down. The only person who can tear a person down is the person who committed the crime. That's a common myth that's protected sexual predators. If we can't hold our own accountable, who can?"
Bill Cosby jury deadlocked, ordered to keep deliberating by judge Bill Cosby goes to court to stop accusers from testifying Black girls unite at the 4th annual Uniquely You Summit for Girls


Welcome to Queen City Tennis!
Charlotte's leading retail shop for tennis enthusiasts. For tennis equipment, apparel and expert advice, our friendly professional staff is here to help.
We offer the latest technologies in tennis equipment with 7 master racquet technicians on staff. Our professionals have the highest certification in Charlotte for comprehensive racquet stringing services. At Queen City Tennis our team is here to help you get the most out of your game, whether you're a beginner or seasoned tennis player.
Bring some style to your next tennis game. We offer the best selection in tennis footwear in Charlotte and the latest on-trend apparel. Queen City Tennis—your one-stop tennis shop in Charlotte.
Visit us today or shop our online store!