text:
Contribute/Contact
Space rocket junk could have deadly consequences unless governments act
July 13, 2022 University of British Columbia
The re-entry of abandoned stages of rockets left in orbit from space launches have a six to 10 per cent chance of severely injuring or killing a human being in the next decade, according to a new UBC study.
Researchers say governments need to take collective action and mandate that rocket stages are guided safely back to Earth after their use, which could increase the cost of a launch, but potentially save lives.
"Is it permissible to regard the loss of human life as just a cost of doing business, or is it something that we should seek to protect when we can? And that's the crucial point here: we can protect against this risk," says lead author Dr. Michael Byers, professor in UBC's department of political science.
When objects such as satellites are launched into space, they use rockets, parts of which are often left in orbit. If these leftover rocket stages have a low enough orbit, they can re-enter the atmosphere in an uncontrolled way. Most of the material will burn up in the atmosphere, but potentially lethal pieces can still hurtle towards the ground.
In the Nature Astronomy paper, the researchers looked at more than 30 years of data from a public satellite catalogue, and calculated the potential risk to human life over the next 10 years, given the corresponding rate of uncontrolled rocket body re-entries, their orbits, and human population data.
Using two different methods, they found that current practices have a six to 10 per cent chance of one or more casualties over the next decade if each re-entry spreads, on average, dangerous debris over an area of 10 metres squared. While the calculations consider the probability of one or more casualties for people on the ground, Dr. Byers says they do not take into account worst case scenarios, such as a piece of debris striking an airplane in flight. In addition, they found the risk is borne disproportionately by the global south, despite major space-faring nations being located in the north, with rocket bodies being approximately three times more likely to land at the latitudes of Jakarta, Dhaka and Lagos than those of New York, Beijing or Moscow. This is due to the distribution of orbits used when launching satellites.
While the risk to any one individual is very low, the authors note that dangerous debris from space hitting Earth's surface is far from unheard of, including a 12-metre-long pipe from a Long March 5B rocket that struck a village in the Ivory Coast in 2020, causing damage to buildings. And space launches are increasing, says co-author Dr. Aaron Boley, associate professor in the department of physics and astronomy. "Risks have been evaluated on a per-launch basis so far, giving people the sense that the risk is so small that it can safely be ignored. But the cumulative risk is not that small. There have been no reported casualties yet, and no mass casualty event, but do we wait for that moment and then react, particularly when it involves human life, or do we try and get in front of it?"
Technology and mission designs currently exist that can largely remove this risk, including by having engines that reignite, as well as extra fuel, to guide the rocket bodies safely to remote areas of ocean. But these measures cost money and there are currently no multilateral agreements mandating that companies make these changes, says Dr. Byers.
Examples exist of such international collective action, Dr. Byers says, including the mandated transition from single to double hulls on oil tankers following the Exxon Valdez spill and the phasing out of chlorofluorocarbons to protect the ozone layer in the 1980s. "Both required some cost to change practice but in response to new scientific analysis, there was a collective will to do so and, in both instances, they were complete successes. What we're proposing is entirely feasible and there's therefore no excuse for delaying action on this matter."
Future research directions will include adding to the models, which currently assume all rocket bodies are the same size, says co-author Ewan Wright, a doctoral student in interdisciplinary studies. "While some have the mass of an average washing machine, others have masses of up to 20 tonnes. This affects how much material burns up in the atmosphere, and adding this detail would improve our models. However, very little is known about how rocket bodies burn up, so having a better understanding of the 'casualty area' of lethal debris that reaches the ground is important."
Categories Space
Spirituality linked with better health outcomes, patient care
The material in this press release comes from the originating research organization. Content may be edited for style and length. Want more? Sign up for our daily email.
Rapid impacts of air pollution on brain, study suggests
High blood pressure? A heart app prescribes musical therapy
LIRR service to Grand Central Madison station to begin. NY State Gover…
Report acts as 'playbook' for gov't. action/implementation of AI capab…
Gardeners of the Forest: Science Poetry Friday!
European farms mix things up to guard against food-supply shocks
Archives Select Month January 2023 December 2022 November 2022 October 2022 September 2022 August 2022 July 2022 June 2022 May 2022 April 2022 March 2022 February 2022 January 2022 December 2021 November 2021 October 2021 September 2021 August 2021 July 2021 June 2021 May 2021 April 2021 March 2021 February 2021 January 2021 December 2020 November 2020 October 2020 September 2020 August 2020 July 2020 June 2020 May 2020 April 2020 March 2020 February 2020 January 2020 December 2019 November 2019 October 2019 September 2019 August 2019 July 2019 June 2019 May 2019 April 2019 March 2019 February 2019 January 2019 December 2018 November 2018 October 2018 September 2018 August 2018 July 2018 June 2018 May 2018 April 2018 March 2018 February 2018 January 2018 December 2017 November 2017 October 2017 September 2017 August 2017 July 2017 June 2017 May 2017 April 2017 March 2017 February 2017 January 2017 December 2016 November 2016 October 2016 September 2016 August 2016 July 2016 June 2016 May 2016 April 2016 March 2016 February 2016 January 2016 December 2015 November 2015 October 2015 September 2015 August 2015 July 2015 June 2015 May 2015 April 2015 March 2015 February 2015 January 2015 December 2014 November 2014 October 2014 September 2014 August 2014 July 2014 June 2014 May 2014 April 2014 March 2014 February 2014 January 2014 December 2013 November 2013 October 2013 September 2013 August 2013 July 2013 June 2013 May 2013 April 2013 March 2013 February 2013 January 2013 December 2012 November 2012 October 2012 September 2012 August 2012 July 2012 June 2012 May 2012 April 2012 March 2012 February 2012 January 2012 December 2011 November 2011 October 2011 September 2011 August 2011 July 2011 June 2011 May 2011 April 2011 March 2011 February 2011 January 2011 December 2010 November 2010 October 2010 September 2010 August 2010 July 2010 June 2010 May 2010 April 2010 March 2010 February 2010 January 2010 December 2009 November 2009 October 2009 September 2009 August 2009 July 2009 June 2009 May 2009 April 2009 March 2009 February 2009 January 2009 December 2008 November 2008 October 2008 September 2008 August 2008 July 2008 June 2008 May 2008 April 2008 March 2008 February 2008 January 2008 December 2007 November 2007 October 2007 September 2007 August 2007 July 2007 June 2007 May 2007 April 2007 March 2007 February 2007 January 2007 December 2006 November 2006 October 2006 September 2006 August 2006 July 2006 June 2006 May 2006 April 2006 March 2006 February 2006 January 2006 December 2005 November 2005 October 2005 September 2005 August 2005 July 2005 June 2005 May 2005 April 2005 March 2005 February 2005 January 2005 December 2004 November 2004 October 2004 September 2004 August 2004 July 2004 June 2004 May 2004 April 2004 March 2004 February 2004 January 2004 December 2003 November 2003 October 2003 September 2003 August 2003 July 2003 June 2003 May 2003 April 2003 March 2003 February 2003 January 2003 December 2002 November 2002 October 2002 September 2002 August 2002 December 1996 September 1996 May 1996
© 2023 ScienceBlog.com | Follow our RSS / XML feed


Flight fare jacksonville, tn to austin, tx for $67.
Take 28% off Terry Fator at the Mirage Hotel & Casino from $69.99.
Take $15 off $220 on Top Hotels in Orlando.
Getting a great rate on your next flight is easy with JustFly! Use a coupon code to save, compare rates of other online booking companies, and easily search for flights no matter where you're going. You can also book hotels and car rentals through JustFly.


Men of color talk growth, identity and self-discovery through the evolution of their hair.
"I was just drawn to it, the design, the colors. It was like, oh my God, what is that?"
Meet three Gen-Next visionaries who never even heard of fashion industry rules. Behold the new way to man TF up—massive personal style.
A new crew of models laced in throwback gear and retro cuts show us who got the juice now.
GQ recently sat down with Abloh and some of his closest collaborators to talk about the designer's inspiring come-up.
He was admitted to the hospital on Monday night.
According to many shoppers, the logo on the sneaker is offensive to Muslims.
The wellness initiative, which highlights queer brothers of color, is encouraging holistic health in combating adversity.


Hire Children's / Kid's Entertainers in Indiana, United States - No Agency Fees!
Find the best Children's / Kid's Entertainer in Indiana for your Wedding, Party, Corporate or other Event Entertainment in minutes!
With us you can enquire & deal 'directly' with a Indiana Children's / Kid's Entertainer...that means no middle man & no 'Agency Fees' added!


text:
package org.apache.bval.jsr303;

import java.security.AccessController;
import java.security.PrivilegedAction;
import java.util.Locale;
import java.util.Map;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import java.util.concurrent.ConcurrentHashMap;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.validation.MessageInterpolator;

import org.apache.bval.jsr303.util.SecureActions;
import org.apache.commons.lang3.ArrayUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Description: Resource bundle backed message interpolator.
 * This message resolver resolve message descriptors
 * into human-readable messages. It uses ResourceBundles to find the messages.
 * This class is threadsafe.

 */
public class DefaultMessageInterpolator implements MessageInterpolator {
    private static final Logger log = LoggerFactory.getLogger(DefaultMessageInterpolator.class);
    private static final String DEFAULT_VALIDATION_MESSAGES =
          "org.apache.bval.jsr303.ValidationMessages";
    private static final String USER_VALIDATION_MESSAGES = "ValidationMessages";

    /** Regular expression used to do message interpolation. */
    private static final Pattern messageParameterPattern =
          Pattern.compile("(\\{[\\w\\.]+\\})");

    /** The default locale for the current user. */
    private Locale defaultLocale;

    /** User specified resource bundles hashed against their locale. */
    private final Map<Locale, ResourceBundle> userBundlesMap =
          new ConcurrentHashMap<Locale, ResourceBundle>();

    /** Builtin resource bundles hashed against their locale. */
    private final Map<Locale, ResourceBundle> defaultBundlesMap =
          new ConcurrentHashMap<Locale, ResourceBundle>();

    /**
     * Create a new DefaultMessageInterpolator instance.
     */
    public DefaultMessageInterpolator() {
        this(null);
    }

    /**
     * Create a new DefaultMessageInterpolator instance.
     * @param resourceBundle
     */
    public DefaultMessageInterpolator(ResourceBundle resourceBundle) {

        defaultLocale = Locale.getDefault();

        if (resourceBundle == null) {
            ResourceBundle bundle = getFileBasedResourceBundle(defaultLocale);
            if (bundle != null) {
                userBundlesMap.put(defaultLocale, bundle);
            }

        } else {
            userBundlesMap.put(defaultLocale, resourceBundle);
        }

        defaultBundlesMap.put(defaultLocale,
              ResourceBundle.getBundle(DEFAULT_VALIDATION_MESSAGES, defaultLocale));
    }

    /** {@inheritDoc} */
    public String interpolate(String message, Context context) {
        // probably no need for caching, but it could be done by parameters since the map
        // is immutable and uniquely built per Validation definition, the comparison has to be based on == and not equals though
        return interpolate(message, context, defaultLocale);
    }

    /** {@inheritDoc} */
    public String interpolate(String message, Context context, Locale locale) {
        return interpolateMessage(message,
              context.getConstraintDescriptor().getAttributes(), locale);
    }

    /**
     * Runs the message interpolation according to algorithm specified in JSR 303.
     *

     * Note:
     *

     * Lookups in user bundles are recursive whereas lookups in default bundle are not!
     *
     * @param message              the message to interpolate
     * @param annotationParameters the parameters of the annotation for which to interpolate this message
     * @param locale               the Locale to use for the resource bundle.
     * @return the interpolated message.
     */
    private String interpolateMessage(String message,
                                      Map<String, Object> annotationParameters,
                                      Locale locale) {
        ResourceBundle userResourceBundle = findUserResourceBundle(locale);
        ResourceBundle defaultResourceBundle = findDefaultResourceBundle(locale);

        String userBundleResolvedMessage;
        String resolvedMessage = message;
        boolean evaluatedDefaultBundleOnce = false;
        do {
            // search the user bundle recursive (step1)
            userBundleResolvedMessage =
                  replaceVariables(resolvedMessage, userResourceBundle, locale, true);

            // exit condition - we have at least tried to validate against the default bundle and there were no
            // further replacements
            if (evaluatedDefaultBundleOnce &&
                  !hasReplacementTakenPlace(userBundleResolvedMessage, resolvedMessage)) {
                break;
            }

            // search the default bundle non recursive (step2)
            resolvedMessage = replaceVariables(userBundleResolvedMessage,
                  defaultResourceBundle, locale, false);

            evaluatedDefaultBundleOnce = true;
        } while (true);

        // resolve annotation attributes (step 4)
        resolvedMessage =
              replaceAnnotationAttributes(resolvedMessage, annotationParameters);

        // curly braces need to be scaped in the original msg, so unescape them now
        resolvedMessage = resolvedMessage.replace( "\\{", "{" ).replace( "\\}", "}" ).replace( "\\\\", "\\" );

        return resolvedMessage;
    }

    private boolean hasReplacementTakenPlace(String origMessage, String newMessage) {
        return !origMessage.equals(newMessage);
    }

    /**
     * Search current thread classloader for the resource bundle. If not found, search validator (this) classloader.
     *
     * @param locale The locale of the bundle to load.
     * @return the resource bundle or null if none is found.
     */
    private ResourceBundle getFileBasedResourceBundle(Locale locale) {
        ResourceBundle rb = null;
        final ClassLoader classLoader = doPrivileged(SecureActions.getContextClassLoader());
        if (classLoader != null) {
            rb = loadBundle(classLoader, locale,
                  USER_VALIDATION_MESSAGES + " not found by thread local classloader");
        }

        // 2011-03-27 jw: No privileged action required.
        // A class can always access the classloader of itself and of subclasses.
        if (rb == null) {
            rb = loadBundle(
              getClass().getClassLoader(),
              locale,
              USER_VALIDATION_MESSAGES + " not found by validator classloader"
            );
        }
        if (rb != null) {
            log.debug("{} found", USER_VALIDATION_MESSAGES);
        } else {
            log.debug("{} not found. Delegating to {}", USER_VALIDATION_MESSAGES, DEFAULT_VALIDATION_MESSAGES);
        }
        return rb;
    }

    private ResourceBundle loadBundle(ClassLoader classLoader, Locale locale,
                                      String message) {
        ResourceBundle rb = null;
        try {
            rb = ResourceBundle.getBundle(USER_VALIDATION_MESSAGES, locale, classLoader);
        } catch (MissingResourceException e) {
            log.trace(message);
        }
        return rb;
    }

    private String replaceVariables(String message, ResourceBundle bundle, Locale locale,
                                    boolean recurse) {
        Matcher matcher = messageParameterPattern.matcher(message);
        StringBuffer sb = new StringBuffer(64);
        String resolvedParameterValue;
        while (matcher.find()) {
            String parameter = matcher.group(1);
            resolvedParameterValue = resolveParameter(parameter, bundle, locale, recurse);

            matcher.appendReplacement(sb, sanitizeForAppendReplacement(resolvedParameterValue));
        }
        matcher.appendTail(sb);
        return sb.toString();
    }

    private String replaceAnnotationAttributes(String message,
                                               Map<String, Object> annotationParameters) {
        Matcher matcher = messageParameterPattern.matcher(message);
        StringBuffer sb = new StringBuffer(64);
        while (matcher.find()) {
            String resolvedParameterValue;
            String parameter = matcher.group(1);
            Object variable = annotationParameters.get(removeCurlyBrace(parameter));
            if (variable != null) {
                if (variable.getClass().isArray()) {
                    resolvedParameterValue = ArrayUtils.toString(variable);
                } else {
                    resolvedParameterValue = variable.toString();
                }
            } else {
                resolvedParameterValue = parameter;
            }
            matcher.appendReplacement(sb, sanitizeForAppendReplacement(resolvedParameterValue));
        }
        matcher.appendTail(sb);
        return sb.toString();
    }

    private String resolveParameter(String parameterName, ResourceBundle bundle,
                                    Locale locale, boolean recurse) {
        String parameterValue;
        try {
            if (bundle != null) {
                parameterValue = bundle.getString(removeCurlyBrace(parameterName));
                if (recurse) {
                    parameterValue =
                          replaceVariables(parameterValue, bundle, locale, recurse);
                }
            } else {
                parameterValue = parameterName;
            }
        } catch (MissingResourceException e) {
            // return parameter itself
            parameterValue = parameterName;
        }
        return parameterValue;
    }

    private String removeCurlyBrace(String parameter) {
        return parameter.substring(1, parameter.length() - 1);
    }

    private ResourceBundle findDefaultResourceBundle(Locale locale) {
        ResourceBundle bundle = defaultBundlesMap.get(locale);
        if (bundle == null)
        {
            bundle = ResourceBundle.getBundle(DEFAULT_VALIDATION_MESSAGES, locale);
            defaultBundlesMap.put(locale, bundle);
        }
        return bundle;
    }

    private ResourceBundle findUserResourceBundle(Locale locale) {
        ResourceBundle bundle = userBundlesMap.get(locale);
        if (bundle == null)
        {
            bundle = getFileBasedResourceBundle(locale);
            if (bundle != null) {
                userBundlesMap.put(locale, bundle);
            }
        }
        return bundle;
    }

    /**
     * Set the default locale used by this {@link DefaultMessageInterpolator}.
     * @param locale
     */
    public void setLocale(Locale locale) {
        defaultLocale = locale;
    }

    /**
     * Escapes the string to comply with
     * {@link Matcher#appendReplacement(StringBuffer, String)} requirements.
     *
     * @param src
     *            The original string.
     * @return The sanitized string.
     */
    private String sanitizeForAppendReplacement(String src) {
        return src.replace("\\", "\\\\").replace("$", "\\$");
    }

    /**
     * Perform action with AccessController.doPrivileged() if a security manager is installed.
     *
     * @param action
     *  the action to run
     * @return
     *  result of the action
     */
    private static <T> T doPrivileged(final PrivilegedAction<T> action) {
        if (System.getSecurityManager() != null) {
            return AccessController.doPrivileged(action);
        } else {
            return action.run();
        }
    }

}

redpajama_set_name: RedPajamaGithub


text:
The Bank Occupy Couldn't Live Without
Bank of America seems determined to keep providing fuel to keep the Occupy movement going strong.
You probably recall the bank's plan to soak its customers by charging them to use their debit cards, which was withdrawn after a torrent of bad press.
Clearly, all is not happy in Bank of Americaland, where the stock has dropped about 50 percent from 2010 levels. Despite being propped up by millions in taxpayer help as well as by Warren Buffet, the bank remains in so much trouble that in September, the bank announced plans to lay off 40,000 employees, mainly in its consumer division.
Who needs those consumers anyway?
It's not just the bank's lowly employees that are losing their jobs. A couple of top executives are leaving too, but the bank made sure to cushion the pain of their leaving with millions of dollars in severance and benefits.
The bank was also forced to cut back one of its most prized activities last year, spending a paltry $2.2 million on lobbying last year, down from nearly $5 million before the financial collapse.
You may not have heard about the bank's latest effort to keep the protestors busy. They've decided to put the squeeze on another bunch of customers, this time small-businesses.
Several small-business owners told the Los Angeles Times is now forcing them to pay their balances in full, instead of on a monthly basis, as they used to. This change, the business owners say, could wipe them out.
Meanwhile, a firm that helps small businesses get loans calls Bank of America's level of small-business lending "a disgrace for the largest bank in the country".
Ami Kassar, CEO and founder of MultiFunding, says Bank of America ranks 6,128 out of 6,800 based on its small-business lending.
Three years after the financial collapse, Wall Street is still a dysfunctional mess, providing little help for Main Street. Meanwhile, our political leaders, for the most part, show no inclination to correct the mistakes that have gotten us here.

redpajama_set_name: RedPajamaCommonCrawl


text:
What is Sky Q?
What is HDR?
How to watch Amazon Prime Video
Best Blu-ray players
LG TV news
LG's 2020 OLED TVs to have edge displays, reveals patent
Rik Henderson · 28 October 2019
Make this holiday period special with the gift of entertainment - AT&T Unlimited & More SM Premium allows you to go all in this Christmas
- To appear at CES 2020, maybe
LG's next-generation OLED TVs will reportedly have curved edge displays, making the bezels on either side effectively disappear.
The Korean manufacturer has submitted a series of new design parents to the US Patent and Trademark Office (USPTO) that show multiple rounded edge form factors that could be adopted for its next range of televisions.
Like several premium mobile phones, such as the Samsung Galaxy S10, the edges - either top or side - will slightly wrap around, giving the illusion of a 100 per cent screen.
We're not sure which of the six designs LG could opt for in a consumer product - if at all. Not all patents end up being realised and some of the designs found by LetsGoDigital would make for weird looking TVs.
However, it might as well utilise the unique, bendable natured of OLED technology, as long as it looks cool and isn't just a gimmick.
Indeed, LG has already explored different TV designed possible thanks to OLED in recent times. After ditching its flexible curved TVs released more than five years ago, it launched its Signature OLED TV R at CES 2019.
The OLED TV R rolls up into a cabinet when not in use and can even be used as a strip display, just poking out of the top to show information, such as the time and weather.
We could see the new edge display OLED TVs at CES 2020 this coming January.
Shop for cell phones, prepaid phones and cell phone plans at AT&T Wireless. AT&T is a wireless telecommunications company providing coverage to millions of customers in the U.S. AT&T offers exclusive products from Apple, Nokia, Sharp, Sony, LG, Moto, Samsung and other manufacturers. The cellular company remains a favourite of consumers who like its sharp voice quality and discounts on cell phone plans.
Via: LetsGoDigital
Sections LG TV
PopularIn TV
What order should you watch every Marvel movie and TV show?
What order should you watch all the Star Wars films and shows?
YouTube TV becomes the first third-party live TV service on PS4
Philips intros 805/855 OLED TV range with AI-driven picture processing
Disney+: Price, shows, movies, features, devices and more
Disney+ availability moved forward to 24 March for UK and other European countries


text:
Obama administration is losing credibility
by Sheila Liaugminas Jun 7, 2013 May 1, 2020 / 4 mins /
Or as the New York Times put it, at least briefly, "the administration has now lost all credibility." Before they moderated their criticism. Though even moderated, it was still criticism of the obvious egregious abuse of power.
Here's the report on the story on the abuse. Which was actually an editorial by the NYT board on 'President Obama's Dragnet,' the text of which Frank Weathers provides in part.
Within hours of the disclosure that the federal authorities routinely collect data on phone calls Americans make, regardless of whether they have any bearing on a counterterrorism investigation, the Obama administration issued the same platitude it has offered every time President Obama has been caught overreaching in the use of his powers: Terrorists are a real menace and you should just trust us to deal with them because we have internal mechanisms (that we are not going to tell you about) to make sure we do not violate your rights.
Those reassurances have never been persuasive — whether on secret warrants to scoop up a news agency's phone records or secret orders to kill an American suspected of terrorism — especially coming from a president who once promised transparency and accountability. The administration has now lost all credibility. Mr. Obama is proving the truism that the executive will use any power it is given and very likely abuse it. That is one reason we have long argued that the Patriot Act, enacted in the heat of fear after the 9/11 attacks by members of Congress who mostly had not even read it, was reckless in its assignment of unnecessary and overbroad surveillance powers.
Based on an article in The Guardian published Wednesday night, we now know the Federal Bureau of Investigation and the National Security Agency used the Patriot Act to obtain a secret warrant to compel Verizon's business services division to turn over data on every single call that went through its system. We know that this particular order was a routine extension of surveillance that has been going on for years, and it seems very likely that it extends beyond Verizon's business division. There is every reason to believe the federal government has been collecting every bit of information about every American's phone calls except the words actually exchanged in those calls.
A senior administration official quoted in The Times offered the lame observation that the information does not include the name of any caller, as though there would be the slightest difficulty in matching numbers to names. He said the information "has been a critical tool in protecting the nation from terrorist threats," because it allows the government "to discover whether known or suspected terrorists have been in contact with other persons who may be engaged in terrorist activities, particularly people located inside the United States."
That is a vital goal, but how is it served by collecting everyone's call data? The government can easily collect phone records (including the actual content of those calls) on "known or suspected terrorists" without logging every call made. In fact, the Foreign Intelligence Surveillance Act was expanded in 2008 for that very purpose. Essentially, the administration is saying that without any individual suspicion of wrongdoing, the government is allowed to know who Americans are calling every time they make a phone call, for how long they talk and from where.
This sort of tracking can reveal a lot of personal and intimate information about an individual. To casually permit this surveillance — with the American public having no idea that the executive branch is now exercising this power — fundamentally shifts power between the individual and the state, and repudiates constitutional principles governing search, seizure and privacy.
The defense of this practice offered by Senator Dianne Feinstein of California, who as chairman of the Senate Intelligence Committee is supposed to be preventing this sort of overreaching, was absurd. She said today that the authorities need this information in case someone might become a terrorist in the future. Senator Saxby Chambliss of Georgia, the vice chairman of the committee, said the surveillance has "proved meritorious, because we have gathered significant information on bad guys and only on bad guys over the years."
But what assurance do we have of that, especially since Ms. Feinstein went on to say that she actually did not know how the data being collected was used? The senior administration official quoted in The Times said the executive branch internally reviews surveillance programs to ensure that they "comply with the Constitution and laws of the United States and appropriately protect privacy and civil liberties."
That's no longer good enough.
Frank's Patheos blog post has the links and commentary, and it's about time this is all said. That the Times is saying it is a sign of, well, the times. Daily Beast columnist and USA Today contributor Kirsten Powers has been a bellwether. She posted this on her Facebook page Thursday:
Why is it that it seems like almost every important thing we learn about the Most Transparent Administration in History is because of leaks?
Liberal commentators are now calling out the administration. It's about time.
Sheila Liaugminas
sheila.31@mercatornet.com
Sheila Liaugminas is an Emmy award-winning Chicago-based journalist in print and broadcast media. Her writing and broadcasting covers matters of faith, culture, politics and the media.... More by Sheila Liaugminas
Tagged: New York Times editorial, Obama administration scandals, Obama dragnet, secret surveillance, White House credibility


The Net Promoter Score (NPS) acts as an indicator of the satisfaction of your customers. Scores range from -100 to 100 and measures the willingness of customers to recommend your brand and services to others. The score can be used to gauge overall customer satisfaction and a foundation of a measurement framework to improve satisfaction. Here's a breakdown on how to calculate NPS score.
Customers are surveyed on a single question, using a 0-10 rating scale.
How likely is it that you would recommend this company's product or service to a friend or a colleague?
Promoters provide a rating of 9 or 10. They generally like the company and its product and service offering. Typically, they are repeat buyers and will fuel organizational growth, refer others and remain loyal to your organization.
Passives give a rating of 7 or 8 and are generally unenthusiastic customers. Though they will not speak negatively about your organization through word-of-mouth, they also are not likely to promote your products or services. They are especially vulnerable to competitive offerings.
Detractors give a score equal or below 6. They are generally unhappy with the organization, its products or its services. They can impede organizational growth and damage your brand through negative word-of-mouth.
NPS is calculated by subtracting the percentage of respondents that are Detractors from the percentage of respondents that are Promoters. The score should fall between -100 and 100. The higher your NPS score, the more satisfied customers you have and the more promoters you have.
NPS can give you a foundation to work on to improve and provide a good customer experience. High scores indicate a healthy, growing business, while a lower NPS can be an indication of customer loyalty issues and customer dissatisfaction.
How to Increase Net Promoter Score?
It's important to have close the loop in an NPS eco-system. Employees should follow-up with all detractors, and doing so can lead to improved scores in the future. It's also important to follow-up on Passives because they can easily switch to a competitor. Determining what the underlying issues are with and for that customer, and working to find a solution can easily improve your NPS score and overall customer satisfaction.


text:
Domestic violence court to open
Published: 8:04 AM April 6, 2007
A SPECIALIST domestic violence court designed to give greater support to victims in Ipswich will open for the first time next week.Based at South East Suffolk Magistrates' Court, it will fast-track domestic violence cases through the judicial system and is expected to encourage more victims to give evidence against their abusers.
A SPECIALIST domestic violence court designed to give greater support to victims in Ipswich will open for the first time next week.
Based at South East Suffolk Magistrates' Court, it will fast-track domestic violence cases through the judicial system and is expected to encourage more victims to give evidence against their abusers.
Marianne Fellowes, domestic violence and abuse service development manager for Suffolk, said it would send a "powerful message" about the way the crime is regarded and handled by the county's criminal justice system.
She added: "By providing a network of support and advice, we expect to see a fall in the number of victims who retract statements before the cases come to court, together with a reduction in the levels of repeat victimisation."
The Specialist Domestic Violence Court (SDVC) is one of 28 located across England and Wales. In areas where there are such courts, the number of domestic violence prosecutions has increased from 59 per cent to 71pc.
One courtroom in the Ipswich magistrates' court will be used as the SDVC every Wednesday, starting from next week.
10 Ipswich MP Tom Hunt speaks of 'disgust' at Downing Street parties
John Budd, chair of the Suffolk Criminal Justice Board said there would be a small percentage of cases that cannot be heard on Wednesdays due to the timing of the offence.
He said: "If, for example, an offence occurred late on the Tuesday, we would not expect a victim to wait for eight days before the case can reach court.
"Therefore, time and resources have been allocated for those cases to be heard on a Friday."


text:
IPOB can't threaten Buhari's visit, says Imo govt
Ahead of the visit of the president, Major General Muhammadu Buhari (retd.) to Imo State on Tuesday, the state government on Saturday dismissed the threat issued by the Indigenous People of Biafra.
At a press conference in Owerri on Saturday, the state's Commissioner for Information and Strategy, Declan Emelumba, said that IPOB can't threaten the president.
Emelumba, who was reacting to a threat issued by IPOB declaring a sit-at-home in the state on Tuesday, said that security operatives were ready for Buhari's visit to the state.
"Nobody can threaten Buhari. He is president and commander in chief of the federal republic of Nigeria. Imo is one of the states he governs and he is free to visit it. Security is in top gear and I can assure you that his visit will be successful," he said.
The commissioner said that Buhari was visiting the state to inaugurate three signature projects built by governor Hope Uzodinma's administration.
He mentioned the projects as the first phase of the Owerri- Okigwe Road, the Owerri- Orlu Road and the rebuilt Imo state House of Assembly complex.
Emelumba said that the projects would boost the economic and social life of the state, adding that the state government spent billions to execute them.
He said, "Mr president is coming to commission Owerri- Okigwe Road, Owerri- Orlu Road and the house of Assembly complex on September 13. These are signature projects built by the governor Hope Uzodinma's administration.
"Previous governments failed to build them. The Orlu- Owerri is a quality dual carriage road. 35 kilometres, spotless and can will any competition in the world and it was executed in less than two years.
"It took honestly and determination by the governor to fix the road. This will change the economy of the state. It will enhance the economic and social activities of the state.
"The House of Assembly complex was rebuilt completely. It was abandoned for ten years. The lawmakers abandoned the place for their safety, which is not a good sign for democracy.
"Uzodinma spent billions to rebuild Imo Assembly complex and it has State of art facilities. These are signature projects. Imo people are excited for the coming of Buhari. The impacts and transformation they will bear in the economy of the State are commendable.
"Security is tight. Nobody can threaten Buhari. Security is absolutely guaranteed. Imo hasn't been crime-free. Security has improved in the state. We are going to have a successful reception for Mr president."
Declan Emelumba
Hope Uzodinma's administration
Imo State
Indigenous People of Biafra
IPOB
Major General Muhammadu Buhari (retd.)
Owerri- Okigwe Road
The lawmakers
Edwin van der Sar turned down Premier League advances to extend Ajax stay
Tinubu congratulates Igbinedion at 88 birthday


Domestic water supply systems are installed in those areas where winter temperatures are above 2 degrees. At a lower temperature, it is necessary to provide special measures to prevent freezing of water in the pipes. In the areas of high humidity, the pipes are insulated. This measure is needed to prevent condensation of water vapor which can cause enhanced corrosion. The networks of pipes are connected by threading or welding. To ensure the normal operation of the domestic water supply system, a professional plumber Tyngsborough will install valves. The valves are needed to disable certain areas, but no more than one riser in a building which is taller than 50 meters. The mechanism is designed to provide you with the two-way water supply.
The internal networks of pipes may include watering taps at the rate of one tap per 60-70 meters of building perimeter. Installation is carried out by a professional plumber Tyngsborough in the following sequence: the pipes are mounted, the fixtures are installed, the pipelines are laid, everything is connected and fixed, and then the risers are mounted and connected to the public network. Basically, there are two ways to install water supply and heating systems. If you are going to do bathroom renovation or replace your plumbing completely, you may want to consider both of them. The first type of mounting includes installation of plumbing with the pipes laid out in a sequential order. With the second type of installation, the water is distributed with a help of collector. In this case, one end of the collector is attached to the cold water pipe, and another one is attached to the hot water pipes.
– Installation of sewer systems outside the building. At the initial stage, it is required to create the most appropriate communication which will be responsible for sewerage pipes (also called the external pipes).
– Installation of internal sewer systems. It is impossible to install the sewer system without performing a function check of all exterior pipes. The plumber must make sure that the pipes are suitable for operation. Only after all external pipes have been checked, the plumber can proceed with the internal plumbing. The works should include wiring of sewage pipes inside the building and installation of the necessary plumbing.
If the drainage or plumbing system has been installed in accordance with all the rules and by using only the high-quality equipment, you can be sure that the troubles and worries associated with installation of sewers can be forgotten for a long time. In addition, you should understand that the regularly and properly working sewage system greatly depends not only on the sanitary conditions, but also on the ecology. It so happens that even when you maintain your plumbing in a good condition, you may need a help of the professional plumber Tyngsborough.


Abstract: Multitask learning can be effective when features useful in one task are also useful for other tasks, and the group lasso is a standard method for selecting a common subset of features. In this paper, we are interested in a less restrictive form of multitask learning, wherein (1) the available features can be organized into subsets according to a notion of similarity and (2) features useful in one task are similar, but not necessarily identical, to the features best suited for other tasks. The main contribution of this paper is a new procedure called Sparse Overlapping Sets (SOS) lasso, a convex optimization that automatically selects similar features for related learning tasks. Error bounds are derived for SOSlasso and its consistency is established for squared error loss. In particular, SOSlasso is motivated by multi- subject fMRI studies in which functional activity is classified using brain voxels as features. Experiments with real and synthetic data demonstrate the advantages of SOSlasso compared to the lasso and group lasso.


Pacific Community Ventures received a grant from the Surdna Foundation to conduct field-building research that would support investors and small businesses to create quality jobs in economically distressed communities across the U.S.
We leveraged this research to produce Moving Beyond Job Creation: Defining and Measuring the Creation of Quality Jobs, to answer two important questions central to the creation of quality jobs, 1) What is a quality job, and 2) How can impact investors measure job quality? The research identified five core dimensions of quality job and offered a measurement approach for assessing job quality.
Our research and reports provide impact investors, researchers, policymakers, and other social sector organizations with actionable recommendations to effectively support the creation of quality jobs. Our quality jobs research also informs lending and business advising programs, as well as our consulting clients to make more effective, data-driven investment decisions as they target quality job creation in underserved communities.
This initial research has also led Pacific Community Ventures to undertake a two-year project, in collaboration with the Aspen Institute, to develop and pilot a quality jobs toolkit for retail small business owners, which will empower business owners to take concrete steps to improve job quality as well as business performance.


text:
Q: How do I make elements in jQuery Selectable deselected? How do I make elements in jQuery Selectable deselected? At this Link it is well documented how to use jQuery Selectable but it is never mentioned how to deselect selected elements again. Any ideas?

    <?php
        for($i=1;$i<=9;$i++) {
            echo "
$i
";
        }
    ?>

A: Hold ctrl and click on the elements. It can also be used to make multiple selections.

redpajama_set_name: RedPajamaStackExchange


text:
Q: Scrolling starts at the wrong offset on chrome but works fine on firefox I'm trying to add smooth scrolling to my website navigation but I'm having a tough time figuring out why the scrolling starts at the wrong offset first then moves correctly.
$(window).on("scroll", function () {
        var scroll_start = window.scrollY;
        console.log(scroll_start);
        if (scroll_start > offset) {
           navToLight();
        } else {
           navToDark();
        }
});

this is how i handle click events on nav anchors:
 $('a.nav-link').on('click', function () {
     var target = $($(this).attr('href')).position().top;
     console.log("This is the target: "+target);
     $("html, body").animate({
         scrollTop: target
    }, 700);
});

this is what i get in the console when i try to navigate to the "about section" in the website.

Website demo

A: The browser also scrolls for you, what you should do is stop propagation and preventDefault on the event:
$('a.nav-link').on('click', function (e) {
   e.preventDefault();
   e.stopPropagation();
   var target = $($(this).attr('href')).position().top;
   console.log("This is the target: "+target);
   $("html, body").animate({
     scrollTop: target
   }, 700);
});


text:
If You Already Had COVID, Do You Need the COVID Vaccine?
FRIDAY, Dec. 11, 2020 -- More than 15 million Americans have been infected by the COVID-19 virus, and many may be questioning whether they need to receive one of the two coronavirus vaccines now on the verge of approval from U.S. regulators.
Short answer: Yes.
"They will be asked to stand in line and get a vaccine also," said Dr. William Schaffner, a professor of infectious diseases at Vanderbilt University Medical Center in Nashville, Tenn. "There will be no distinction made, in part because we think there's no adverse event that will occur, and also the protection from the vaccine actually may be more long-lived, of longer duration than that you get from the natural infection."
Coronaviruses are notorious for prompting a flawed and incomplete immune response in humans, infectious disease experts say.
It's one reason why science has yet to come up with a cure for the common cold.
"With the four seasonal beta coronaviruses that circulate and cause all the upper respiratory infections you see in your practice, those people lose immunity in months to a year or two," said Dr. Gregory Poland, director of the Vaccine Research Group at the Mayo Clinic in Rochester, Minn. "That's why people fall prey to the common cold again and again."
The body uses a relatively simple strategy to fight off common cold coronaviruses, and this strategy does not appear to make a lasting impression on immune system memory, Poland said.
There's a chance that people who have had asymptomatic or mild cases of COVID-19 did not build up any lasting immunity. In fact, it's even unclear at this point what sort of immunity is conferred by severe or life-threatening cases.
"While natural infection does provide protection for some period of time, it is somewhat unpredictable how robust that response is in individuals," said Dr. Amesh Adalja, a senior scholar with the Johns Hopkins Center for Health Security, in Baltimore.
A recent COVID-19 infection could put a person a bit farther back in line for the vaccine, however.
"It is true that those who had a recent infection -- within 90 days -- should be behind those who hadn't," Adalja said, noting recommendations from the Vaccine Advisory Committee for the U.S. Centers for Disease Control and Prevention.
More threatening coronavirus diseases like SARS (severe acute respiratory syndrome) and MERS (Middle East respiratory syndrome) appear to produce immunity that lasts longer, but the data is limited because both viruses have infected far fewer people than the COVID-19 pathogen, experts said.
COVID-19 patients shouldn't feel as though they're getting nothing from the vaccine, Adalja added.
"In those that have recovered, the vaccine will boost natural immunity and it will be more effective at preventing disease," he said.
The clinical trials for both the Pfizer-BioNTech and Moderna vaccines are expected to provide more insight into their benefit for previously infected patients as participants continue to be monitored over coming months and years, Adalja said. The trials included some people who had already been infected.
"This is an active area of study and the vaccine trials will be analyzed in detail to see how the vaccine impacted natural immunity, as 10% of those in the trials had prior infection," Adalja said.
Posted: December 2020
Further Support and Information on COVID-19
COVID-19: Prevention & Investigational Treatments
COVID-19 Support Group
Coronavirus Disease Guide
When ICUs Near Capacity, COVID-19 Patients' Risk for Death Nearly Doubles
WEDNESDAY, Jan. 20, 2021 -- When intensive care units are swamped with COVID-19 patients, death rates may climb, a new study finds. Looking at data from 88 U.S....
COVID-19 Ups Complication Risks During Childbirth
WEDNESDAY, Jan. 20, 2021 -- Women who have COVID-19 during childbirth are more likely to face complications than moms-to-be without the coronavirus, researchers...
WEDNESDAY, Jan. 20, 2021 (American Heart Association News) -- As the U.S. marks one year since the arrival of SARS-CoV-2, the coronavirus has made history in epic and terrible...
More News Resources
FDA Medwatch Drug Alerts
News for Health Professionals
New Drug Approvals
New Drug Applications
Clinical Trial Results
Generic Drug Approvals
Whatever your topic of interest, subscribe to our newsletters to get the best of Drugs.com in your inbox.
Latest Drug Information Updates
Verquvo
Gemtesa
Orgovyx
Klisyri
Orladeyo
Danyelza
More drug information updates
FDA Safety Alerts
Latest FDA Drug Alerts
FDA Updates Vinca Alkaloid Labeling for Preparation in Intravenous Infusion Bags Only
Fresenius Kabi Issues Voluntary Nationwide Recall of Ketorolac Tromethamine Injection, USP Due to the Presence of Particulate Matter
Essaar Inc. Issues Voluntary Nationwide Recall of Rubbing Alcohol Contaminated with Methanol
More FDA drug alerts
Drugs in the Pipeline
Kyzatrex
somatrogon
ALKS 3831
MydCombi
Korsuva
surufatinib
More drug applications


Private coach hire in Shefford. Huge selection of coaches and minibuses for hire throught Shefford & Bedfordshire. Get an online quote directly with the coach hire companies and book online.
Ever wished that the hire industry was more up-to-date After all, if you can hail a taxi or reserve a hotel room in just a few clicks, why can't you do the same for Coach Hire in Shefford Well, now you can - thanks to the team behind Anything for Hire.
At Anything for Hire, it couldn't be simpler to find the lowest quotes in town. By connecting you with a network of Private Coach & Bus Hire providers in Shefford, we make it easy for you to browse and books a wide range of packages in no time at all! And because we only work with partners that we know and trust, you can be confident that you'll be in great hands.
Keen to find the best prices on Coach Hire in Shefford Get started at Anything for HIre today.
We offer Cheap Coach Hire in all local areas including Dunstable, Wixams, Leighton Buzzard, Kempston, Biggleswade, Houghton Regis, Bedford, Linslade, Flitwick, Sandy, Arlesey, Shefford, Potton, Stotfold, Woburn, Luton. Our visitors who search for Coach Hire also tend to search for Bus Hire, Coaches, Ascot Races, Wedding Transport, Tour Bus, Mini Coach, London Bus, Coach Rental, Mini Bus, Transport.


Welcome to the wikibook course on written Chinese. This course aims at teaching Chinese for all dialects. The Chinese spoken language is extremely diverse. It can be mainly divided into Mandarin and Cantonese, not mentioning the diverse dialects. The map on the right can give you an idea of the diversity of the Chinese spoken language. Therefore, this course aims at the written form of Chinese, which is universal in most parts of China. You can pick up different pronunciations of the language in the corresponding dialect you target to learn.
Note: To use this book, your web browser must first be configured to display Chinese characters . If the characters in the grey boxes below appear as blank boxes or garbage, it is not properly configured.
The difference between the written and spoken language in Chinese differs even more in regions. The official Mandarin, spoken all throughout mainland China (put aside the slight differences in dialects for now), is rather simple: you speak what you write. It is just like in English: you speak what you write in passages or books, etc. In English even the spoken abbreviations (I'm, it's, etc) can be written down half-formally. This is the case in Mandarin.
The spoken language in other dialects, especially those in Southern China, are however more complicated. The written language can, of course, be spoken as usual as you do when reading aloud an English passage; however the language used in everyday lives are different from the written forms. Their spoken language features many alterations of the words, not to mention the different pronunciations of most of the Chinese words from the Mandarin. Although the spoken language can be written down, it is clearly regarded as informal (save for those books that are especially targetted for spoken-language readers).
For beginners and those who wish to use Chinese as a mean of communication throughout China, Mandarin is surely your choice (the only exceptions are some of the Southern provinces, most notably the cities of Hong Kong, Macau and Guangzhou, where people use Cantonese for everyday communications). However, for those who wish to study the Chinese culture or the language in depth, it is recommended that you learn Cantonese, Min Nan or Hakka. Mandarin is a language based on the original northern dialects recently half-invented in order to unify the spoken language used throughout China. Because the northern part of China has been under the influence of many other tribes, such as the Mongols, Huns, etc, which actually ruled the northern people and forced their culture into the Chinese people's lives, many alterations to the original Chinese language can be observed.
In contrast, the southern part of China has managed to retain the features of the original language (for example, 食 - eat, is the word used in spoken Cantonese and Hakka, yet it should be replaced by the Mandarin 吃 in all written forms. However, 食 is the original word used by ancient Chinese, and is the word featured throughout the developing years). So for investigators, scholars, or other who want to study the language in depth, Cantonese is recommended.
This page was last edited on 1 October 2018, at 11:29.


If you are tired of never having enough time to clean your home, it doesn't necessarily mean that you don't deserve to have a home that you can be proud of. Rather than spending time that you don't have trying to keep up on things, set up an appointment with a cleaning service in Salt Lake City. american housekeeping of Utah is an excellent company with a great reputation for doing a beautiful job. They have over 20 years experience keeping homes across the Wasatch Front clean. It doesn't matter whether you live in a big home or a small home. Maybe you only want someone to come in and clean the kitchen and bathroom. Maybe you need a one time cleaning. The possibilities are endless when you choose to turn your housework over to an outside source.
You aren't going to believe the difference you will see after you have hired someone to come in and do your cleaning for you. All of those fingerprints on the cabinets and appliances in your home will be wiped away. Forget about that grease on your kitchen counter that you haven't been able to get up. We have cleaning supplies that will take care of these problems for you. Of course, if you have anything extra that needs to be done, you can let us know in advance and we will take care of it. For example, maybe you have noticed that you have something on your baseboard that won't come out. If this were the case, you could let us know and we could take a look and removes that problem once and for all.
There are so many responsibilities that come from being a homeowner. Keeping your home clean is one of them. If you don't have time to keep up on your everyday housework, there is nothing to worry about. Set up an appointment with our cleaning service in Salt Lake City today. You are going to be happy with the final results. For once, you won't have to worry about making sure your house is perfect before your in laws arrive.


text:
importScripts("../lib/WebModule.js");
importScripts("../lib/ThreadProxy.js");

var proxy = new WebModule.ThreadProxy(function postMessageHandler(args, event) {
        event.postback([ args[1] + " WORLD" ]);
    }, function(yes, no) {
      // [2]
    });


Kathy Rao is a Lecturer in Accounting at the UniSA Business School. She joined UniSA in February 2016. Prior joining to UniSA, she has been teaching and tutoring in the areas of financial accounting, management accounting and Governance, ethics and Sustainability topics at Flinders University, Adelaide. As a Lecturer in Accounting, Kathy Rao coordinates undergraduate and post graduate Management Accounting courses, as well as teaching in first year and second year accounting courses.
Kathy Rao holds a Bachelor of Commerce (honours) and a PhD. Kathy Rao has recently completed her PhD in the area of CSR Reporting and Corporate Governance. Kathy Rao's current research focuses on gender diversity effect on corporate social responsibility and modern slavery in supply chains in Australian companies. Kathy Rao's research have been presented and published in various journals and conferences including Journal of Business Ethics, Meditary Journal and APIRA conference.
With over a five years teaching experience in a variety of institutions both in Australia and India including an extensive experience of working as an audit assistant, Kathy Rao brings more than 5 years of experience in Accounting to the UniSA Business School.
Rao, K & Tilt, C 2016, 'Board diversity and CSR reporting: an Australian study', Meditari accountancy research, vol. 24, no. 2, pp. 182-210.
Rao, K & Tilt, C 2015, 'Board composition and corporate social responsibility: the role of diversity, gender, strategy and decision making', Journal of business ethics, vol. 138, no, 2, pp. 327-347.
Rao, KK, Tilt, CA & Lester, LH 2012, 'Corporate governance and environmental reporting: An Australian study', Corporate governance : the international journal of business in society, vol. 12, no. 2, pp. 143-163.
Rao, K & Tilt, CA 2016, 'Gender and CSR decisions: Australian evidence', Asia Pacific Interdisciplinary Research in Accounting (APIRA) Conference, RMIT University, article no. 187, pp. 1-28.
Rao, K & Tilt, C 2015, 'Board diversity and CSR reporting: Australian evidence', in J Dumay & J Hazelton (eds), Australasian Centre on Social and Environmental Accounting Research Conference, Academic Publishers and Publishing International, pp. 116-125.
Rao, KK & Tilt, CA 2013, 'Corporate governance and corporate social responsibility: A critical review', in K Hughes et al. (eds), 7th Asia Pacific Interdisciplinary Research in Accounting Conference, APIRA - Asia Pacific Interdisciplinary Research in Accounting, pp. 1-24.
Rao, K, and Tilt, CA. 2018, "Gender Diversity and CSR Decisions: Perspectives from Australian Boards - Preliminary Evidence", Proceedings of the European Accounting Association (EAA) conference, 31 May – 2 June 2018, Milan, Italy.
Rao, K, and Tilt, CA 2015, 'Board diversity and CSR reporting: Australian evidence', in Dumay, John, and Hazelton, James (editors) (eds), Australasian Centre on Social and Environmental Accounting Research Conference, Academic Publishers and Publishing International, pp. 116-125.
Christ K, Buritt R & Rao K.(2018) "Laws passed to fight modern slavery", Acuity (Online).
Christ K, Buritt R, Rao K. and Spence C. (2017) "What you need to do about modern slavery reporting", Company Director Magazine, November 2017 issue, pp.54.
Christ K, Buritt R & Rao K. (2017) "Corporate reporting on modern slavery", Acuity (Online).
Emerald Literati Awards - Highly Commended Award for the paper, 2017 "Board diversity and CSR reporting: an Australian study" Meditary Accountancy Research.


Returns the group to which the record belongs in the result set generated by SERIES BY. The return value is of type BIGINT, and always returns 1 if the SERIES BY clause is not used.
These functions return standard deviation of the given column values. STDDEV returns the standard deviation of the sample; STDDEV_POP returns the standard deviation of the population. The values are the square root of the values of VARIANCE and VAR_POP respectively.
This function cuts the data of a variable string column from the START for the specified SIZE.
The value of START starts from 1. If the value is set to 0, it returns NULL. If the size is not specified, it's internally designated as big as the string size. If the value of SIZE exceeds the length of the input string, SUBSTR returns the maximum length of the string.
It returns duplicated character strings until it finds the inserted numbers which was specified by the given delimiter. If the number is negative value, it evaluates the inserted character string and returns the rest of the string from the point where it finds the delimiter.
If the count is set to 0 or there is no delimiter in the string, it returns NULL.
It is an aggregate function, and returns the total sum of a numeric column.
It converts a given data type into a string. It can specify "format_string" based on data types. It doesn't support binary type.
id          TO_CHAR(dt, 'YYYY.MM.DD HH24:MI:SS mmm.
It converts the value of datetime column to the specified string. "Datetime" function allows you to make or combine strings in various format. If format_string is omitted, the default is "YYYY.MM.DD HH24:MI:SS mmm:uuu:nnn".
YYYY The year as a four.digit number.
MM The month as a two.digit number.
MON The abbreviated name of the month in three letters in Alphabet.
DD The day as a two.digit number.
HH The hour as a two.digit number.
HH12 The hour, using a 12.hour clock from 01 to 12.
HH24 The hour, using a 24.hour clock from 00 to 23.
HH2, HH3, HH6 The hour as a two.digit number, but will be categorized as the time by the numbers after HH. In other words, if you use HH6, 0 represents from 0'o clock to 5'o clock and 6 represents from 6'o clock to 12'o clock. This method of representation is useful when you calculate time series data based on the specified time. This value is represented based on 24 hours.
MI The minute as a two.digit number.
MI2, MI5, MI10, MI20, MI30 The minute as a two.digit number, but be categorized as the time by the numbers after MI. In other words, if you use MI30, 0 represents from 0 min to 29 min, and 30 numbers from 30 min to 59 min. The method of representation is useful when you calculate time series data based on the specified time.
SS The second as a two.digit number.
SS2, SS5, SS10, SS20, SS30 The second as a two.digit number, but be categorized as the time by the numbers after SS. In other words, if you are using SS30, 0 represents from 0 sec to 29 sec, and 30 represents from 30 sec to 59 sec. The method of representation is useful when you calculate time series data based on the specified time.
AM Based on the current time, it is represented as AM or PM.
mmm The millisecond as a three.digit number. The range of values is 000 to 999.
uuu The micro second as a three.digit number. The range of values is 000 to 999.
nnn The nano second as a three.digit number. The range of values is 000 to 999.
Binary type doesn't support TO.CHAR because it is impossible to convert it into texts. If you want to display it on the screen, you can check it displaying a hexadecimal value through TO_HEX() function.
This function converts a character string represented in format string into datetime type. When the format_string is omitted, the default is "YYYY.MM.DD HH24:MI:SS mmm:uuu:nnn".
Mach> INSERT INTO  to_date_table VALUES(4, TO_DATE('2014.DEC.30 23:22:34 777:888:999', 'YYYY.MON.DD HH24:MI:SS 1 row(s) inserted.
Like the TO_DATE function, it converts a string string represented by a given format string to a DATETIME type. If the conversion fails, NULL is returned.
This function returns the hexadecimal value of the column. If the column value is NULL, TO_HEX returns its value. If not, TO_HEX returns the value of the column. To ensure consistency of the output, it converts into BIG ENDIAN format and displays for short, int, and long types.
These functions convert a given string into IPv4. If the string cannot be converted into numeric, TO_IPV4() returns an error and terminates the operation. For TO_IPV4_SAFE() function, it returns NULL and continues the operation.
These functions convert a given string into IPv6. If the string cannot be converted to numeric, TO_IPV6() returns an error and terminates the operation. For TO_IPV6_SAFE() function, it returns NULL and continues the operation.
These functions convert the given string to the numeric double type. If the string cannot be converted into numeric, TO_NUMBER() function returns an error and terminates the operation. For TO_NUMBER_SAFE() function, it returns NULL and continues the operation.
The TRUNC function returns number truncated to n decimal places. If n is omitted, then number is truncated to 0 places. n can be negative to truncate (make zero) n digits left of the decimal point.
It is an aggregate function and counts the number of times for changing the values of specified columns.To have accurate results, the row of data must be inserted in sequential order. Therefore, this function cannot be used with JOIN or INLINE VIEW. The current version supports all data types except varchar type.
UNIX_TIMESTAMP is a function that converts a date type value to a 32-bit integer value converted by the unix time () system call, while FROM_UNIXTIME is a function that converts integer type data to a date type value.
This function converts the contents of the given column into uppercase.
The VARIANCE function returns the variance value of a numeric column. Variance function returns the variance of the sample and VAR_POP function returns the variance of the population.
YEAR (datetime_col), MONTH (datetime_col), and DAY (datetime_col) are functions that extract the corresponding year, month, and day from the input datetime column values and return them as integer type values.


text:
in: Pages using ISBN magic links, Recorded Time and Other Stories audio stories, Stories set in 2351
A Most Excellent Match (audio story)
A Most Excellent Match
Main Range 150c
Mindsmith
The Austen Experience, the Galaxy Fair, 2351
Matt Fitton
Ken Bentley
Richard Fox & Lauren Yason
Recorded Time and Other Stories
3rd of 4 stories
6Z/A
Paradoxicide Question Marks
A Most Excellent Match was the third story in the audio anthology, Recorded Time and Other Stories, which comprised the one hundred and fiftieth release in Big Finish's monthly range. It was written by Matt Fitton and featured Colin Baker as the Sixth Doctor and Nicola Bryant as Peri Brown.
4.1 Individuals
4.2 Literature
It is a truth universally acknowledged that a single girl in possession of a mind of her own must be in want of a husband. But which of Miss Peri Brown's rival suitors will be the one to win her hand: handsome Mr Darcy, or the mysterious Doctor?
The Doctor practices proposing to Peri at Longbourne Manor when he is greeted by Mr. Darcy, the handsome stranger who has come to ask for Peri's hand in marriage. Meanwhile, Peri gossips with her sister Tilly about the handsome suitor who has arrived.
Mr. Darcy speaks privately with Peri but the Doctor, under the guise of the name Dr. Smith, interrupts to ask her for her hand in marriage. However, he is rejected, with Peri having accepted Mr. Darcy's proposal instead. The Doctor, outside, contacts Cranton and tells him that he suspects his Jane Austen Experience program might be malfunctioning as Peri seems unaware of who she really is and it appears her mind is trapped in the program. He decides to investigate further.
He discovers that there may be a Mindsmith loose in Cranton's stolen technology that is attempting to take over Peri's mind and use her body in order to escape the machine which Cranton stole to help support him in his old age because his marine pension would not be able to do so. The Doctor, being attacked by something, becomes unable to move while Cranton attempts to monitors Peri's situation. Instead, the Doctor is confronted by the Mindsmith, now having taken on the form of Heathcliff. Luckily, however, the Doctor's earlier tactic to awaken Peri works and she wakes up confused, her mind freed. Cranton helps her out and contacts the Doctor, informing him but when he asks Cranton to extract him, Cranton finds he is unable to do so. The Doctor confronts the Mindsmith who reveals its real target was him, has cut off any chance of his mind being extracted from the psyche-scape and Cranton loses contact with the Doctor.
After being threatened to be reported by Peri, she and Cranton hatch a plan to get the Doctor out of there. The Doctor, meanwhile, awakens inside the psyche-scape still, slightly amnesiac, and finds the Mindsmith, posing still as Heathcliff, attempting to have him sign over his property. Peri has Cranton put her back in the psyche-scape and returns to the simulation just in time, and manages to convince the Mindsmith that the Doctor's property, due to unfortunate circumstance, is actually hers. They then trick the Mindsmith, who is forced to obey the rules and therefore authority of the simulation, by having Cranton pretend to be the rich widowed mother of Peri's character and Tilly, whom the Doctor earlier discovered is the AI that helps control the program, and have the Mindsmith lose control of the simulation by transferring all the estates of the different simulations to her (the character). They then program Tilly to take over as Cranton's mother character "dies" and Tilly releases the Doctor from the machine and control of the Mindsmith. They manage to escape in time as Tilly causes the machine to overload, destroying the Mindsmith forever.
The machine becomes destroyed along with the data-core and Tilly. Peri laments the loss and Cranton begs the Doctor to not tell the authorities and for a second chance to run something. The Doctor reluctantly agrees and he and Peri set off. Peri teases him that although the Mindsmith had been stopping her from leaving, she still remembers everything from the simulation, especially the Doctor's marriage proposal, much to his chagrin.
Peri Brown - Nicola Bryant
Tilly - Rosanna Miles
Darcy/D'Urberville/Heathcliff - Philip Bretherton
Cranton - Paul Shearer
Individuals[]
Peri has read Pride and Prejudice by Jane Austen, though it was some time ago.
Literature[]
The Austen Experience is based on Pride and Prejudice by Jane Austen.
In addition to being Fitzwillian Darcy the Mindsmith takes on the persona of Alec d'Urberville from Tess of the d'Urbervilles by Thomas Hardy, and Heathcliff from Wuthering Heights by Emily Brontë.
Peri adds Moll Flanders by Daniel Dafoe to the Austen Experience in order to save the Doctor from the Mindsmith.
Tilly traps the Mindsmith in the burning Thornfield Hall from Jane Eyre by Charlotte Brontë destroying it.
The Doctor says Cranton should have put some Charles Dickens into his programs.
Cranton claims that the Austen Experience is being hosted at the 2351 Galaxy Fair.
The Austen Experience takes place in the psyche-scape.
Cranton claims he also has other authors including T.S. Eloit, William Makepeace Thackeray and some works by the Bronte Sisters in the program.
The Mindsmiths of Askatan used mind weapons to win their wars.
The Doctor can play Wisp, Cribbage and Snap.
When they trick the Mindsmith, several characters are used including General Tilney of Northanger Abbey, Mr. Earnshaw of Wuthering Heights, Mr. Rochester of Thornfield Hall from Jane Eyre and Sir Walter Elliot from Persuasion (another Jane Austen novel).
This is one of the few stories in the Doctor Who audio medium to use a some inappropriate language for younger listeners. Cranton refers to the patrons of his Austen Experience as high class and not people who "...roll up to grab a bitch..."
During his first incarnation, the Doctor encountered Jane Austen in London in February 1814, in the company of Steven Taylor and Vicki Pallister (AUDIO: Frostfire), the Tenth Doctor would hunt vampires with her in Bath at some point in the 1800s (AUDIO: Expiry Dating) and the Eleventh Doctor and Clara Oswald met her on the 15 May 1800 after meeting her in an alternate version of 1815 (AUDIO: False Coronets).
The Doctor is a great fan of Charles Dickens. (TV: The Unquiet Dead).
The Ninth Doctor met Emily Brontë in 1845 (AUDIO: The Window on the Moor) and the Twelfth Doctor would met her sister Charlotte Brontë in the same year (COMIC: Unearthly Things).
The Doctor again reminds Peri that she is from Baltimore. (AUDIO: The Reaping)
Recorded Time and Other Stories audio stories
... more about "A Most Excellent Match (audio story)"


The Nilfisk range of Click 'N' Clean accessories is extensive and has been developed to make cleaning with high pressure even more efficient, whether it is cleaning a patio, car, fence, drains, garden furniture or emptying a pond. All Nilfisk pressure washers are equipped with several unique features which benefit the user when cleaning.
Now that you've got your pressure washer, you need accessories. Transform your pressure washer into the ultimate labour saving device with our range of accessories, specially designed to help you clean you car, patio or anything else for that matter.
Simply click the extras on to your pressure washer and you're good to go, with powerful new functions.


Divorce lawyer Berwick - The skirmish with the majority of mundane families is the fact that they often hesitate till they think about hiring a Berwick family attorney to be in a unanticipated scenario. By the time an unanticipated problematic occurs, when seeking a Berwick family lawyer firm that may suit them, they often cram. The popular union is the basis of your Berwick families and the household will most likely be broken. But if mundane families have a fundamental family attorney, it'll significantly help the skirmish as the couple to work out the fundamental situation will be helped by the Berwick NS attorney. A fundamental family attorney can nevertheless help the unanticipated couple in locating the fundamental price for the two parties in the event the decent union isn't working out. This is the time to call a divorce lawyer Berwick NS to help.
You've got no other fundamental alternative except to choose a Berwick divorce attorney and in case your problematic union is going down, a Berwick law business can definitely help you. You see, its the occupation of a fundamental household attorney to assist you go through the unanticipated procedure for divorce and he may also give you fundamental insights on what to do. In a time of popular torment and mental despair, theres no better decent man to be with than a fundamental man who is able to manage all these fundamental legal proceedings. He is fundamental to assist you to proceed to the popular details of the divorce including the fantastic little one's financial needs as well as the kids guardianship.
It shines mundane when Nova Scotia families are together. While the fantastic kids go to school and study one parent or both parents will supply the fundamental requirements the home. But when a Berwick divorce occurs, the best divorce attorney is needed for the skirmish for every single fundamental member of the home is shaken. This really is the popular reason the kids become depressed mundane and discouraged after a Berwick divorce.
Make the unanticipated situation better or at least to be able to avert this skirmish, you must truly have a fundamental household attorney. By looking for an decent arrangement thats best for everyone, he is able to assist the skirmish and make the problematic better. This would likely entail much of the Berwick Nova Scotia property is going to be shared or decent days the kids will spend with each parent.
In the unanticipated event the couple has legal concerns or when a popular divorce is going to ensue, the Berwick family attorney is known as as a fundamental way to clarify the problematic scenario. In the event of a Berwick divorce, he'll clarify to both Berwick parties what'll occur after this fundamental choice they can be going to choose. Because he'll see that they can be making the fundamental household choice in a way, a Berwick family attorney functions as a popular counsel for the married couple.
One cannot simply phone an fundamental attorney when they have popular legal concerns to take care of. Don't forget that fantastic attorneys also have their very own specialty in this fundamental area. Like a fundamental attorney who's understood for processing fundamental Berwick debt documents but in addition on Berwick household debt relief loans that they're demanded to do this, you need to call someone for skirmish with household matters. Anybody who's going through unanticipated rough times in this way unhappy actually gets unanticipated credit card debt and feels like he's alone. Yet, because you may get the best divorce lawyers in Berwick thats fundamental, a Berwick counsellor. For this fundamental reason, you can't solely rely on them during the skirmish but in addition in fundamental times when you must speak with somebody. Under the NS law, a Berwick family attorney is fantastic to advise their Berwick clients before and after the case is happening.
The Berwick family attorney we have to hire should be quite fantastic when it comes to family problems that are a skirmish. Lets take a fundamental look on how can we locate an decent attorney which will solve our unanticipated legal concerns.


In this essay, from a Marxist perspective, we aim to examine the conceptual underpinnings of Coates' analysis of race and racism, principally in his award-winning book but also in his well-known articles for The Atlantic. We hope to clarify the differences between Coates' anti-racist (essentially liberal-nationalist) analysis and a Marxist (class) analysis of racism. We examine several antinomies that run throughout Coates' work: class versus race, white freedom versus Black subordination, voluntarism versus determinism and essentialism versus anti-essentialism.


As a well respected member in the wedding industry Images On Video Productions has been producing the highest quality wedding videos since 1982. Creative and personal, we work with you to ensure that this once in a lifetime event will last forever.
Whether its a celebration in Whistler, a convention in San Diego, or a stage production in Vancouver, Images On Video Productions will capture the moment with style, experience and on budget.
Since Images On Video Productions started in 1982, our customer base has grown. Along the way, we've built a reputation for personal support and unquestionable quality. Production experience in industrial, orientation, training, promotional and product sales videos and of course DVDs.
Weddings: High quality cost effective video for your wedding day.
Corporate: High quality cost effective video for your corporate event.
Event Video: High quality cost effective video for your special event.
Images On Video Productions Event Promo from Images On Video Productions on Vimeo.


text:
ECCD
Conoce a nuestro voluntariado
Home/What We Do
We always seek to partner with communities, local authorities and national government entities regardless of party affiliation. We are recognized as a leader in early childhood development, newborn health, child rights governance, child protection and humanitarian response by authorities, both at the central level and locally in the areas where we are currently implementing our programs.
Building on our global and regional experience and successes of applying innovations in livelihoods, rural income generation, and work with women and girls, Save the Children supports families in El Salvador build financial and social assets in some of the poorest municipalities in the country.
The organization has been sought out to provide input into the design and implementation of several policies and national-level programs – most recently the early childhood education policy and the inclusive education policy.
Save the Children International is a company limited by guarantee, registered in England and Wales with company number 3732267 and a charity registered in England and Wales with charity number 1076822. Its registered office is St Vincent House, 30 Orange Street, London, WC2H 7HH.
© 2021 Save the Children International | Legal information
Global Campaign


Stylish and comfortable apartment in a redesigned studio and bedroom. Repair of the end of 2011. Located a block from the main pedestrian street Soviet, where the main shops, clubs, shops and restaurants of the city. The apartment is equipped with WiFi internet access included in the price. There is also an LCD TV, air conditioner, refrigerator, washing machine, iron, hair dryer, all crockery and crisp white stirilnoe bele.Vsya novye.Podezd furniture and appliances clean with a coded lock and intercom system. Discount for more than 6 days!


Discarded electronic products and components – or e-waste, as they are collectively known – can represent a major environmental dilemma or a massive potential economic windfall.
If treated properly, much e-waste may be reclaimed or recycled for future use and converted into a significant new revenue stream. Improperly treated e-waste, on the other hand, can result in contamination to the soil, air, and water, while also exposing workers, nearby residents, and wildlife to a multitude of health hazards.
A new market study by ABI Research, "e-Waste Recovery and Recycling," forecasts that the worldwide market for e-waste recovery will grow from $5.7 billion in 2009 to nearly $14.7 billion by the end of 2014, representing a compound annual growth rate of 20.8 percent over the forecast period. This figure represents money generated through reclamation of valuable materials from e-scrap. The study is available for a fee.
the integration of formal and informal recycling markets in key Asia-Pacific locations.
However, he believes that, "The combined impact of the ongoing global economic recovery and strengthening e-waste recycling legislation worldwide will drive improved recycling/recovery rates in each of the next five years." Although the legal framework for e-waste recycling remains strongest in Europe under the region's stringent WEEE directive, efforts made on behalf of non-profit groups such as the Basel Action Network (BAN) and e-Stewards Initiative are driving improvements in many other regions of the world, especially the United States.


text:
Sony WF-1000XM4 Earbuds ❗Is it worth the price $279🙄❓
Sony WF-1000XM4 (2021)
Hi guys, how are you today? your Coffee and let's start our review, I've been testing out Sony's new XM4 truly wireless earbuds and I've gotta admit that these things have blown me away in a few different areas compared to Apple's AirPod Pros that I've heard many times.
And once that's pretty clear to me at this point is that we're getting really really close to peak earbuds, or at least what earbuds were always meant to be, and even though the XM4's aren't perfect, and I'll explain exactly why and how in this review, they've definitely gone a long way.
So before I get into my favorite features about these earbuds and why I actually think they're worth the hefty 279 usd price tag, I want to go back to the roots of these Sony earbuds, and truly wireless earbuds in general, to show you guys just how far we've come and how we got here.
As we all know, wireless earbuds like this have been the standard for so long already that many of us, especially the younger generation, have forgotten how they used to be.
Almost a decade ago, every single pair of earbuds were wired, and for many years, the majority of people would be buying cheap earbuds like the JVC Gumy's, which were considering budget at around $7 a pair, or they'd just be using whatever came in the box with their smartphones, like the newly updated Apple Earpods that came with the iPhone 5.
And then, in 2013, we finally started seeing wireless headphones like the Motorola Buds which came with a neckband, housing the battery and bluetooth chip, with wires going up to the earbuds, and then that quickly evolved to wireless earbuds like the Jaybird BlueBuds X which were much more compact, ditching the bulk headband, but of course, still requiring the cable connecting both sides because it was the most reliable way to make sure the audio between both ears played perfectly in sync.
And then, of course, in 2016, Apple revealed the original AirPods with their new W1 chip that perfectly synced the audio and pushed the entire industry forward with new features like auto-pause when you take an AirPod out of your ear, and the ability to just use one earbud at a time while the other one is charging in the case, which was also revolutionary at the time.
But now shifting over to Sony's part of the story, the same month that Apple released their AirPods, Sony launched their MDR-XB50BS wireless earbuds for $80 which still came with a cable that rested on the back of your neck.
It wasn't until the following year that Sony came out with their WF-1000X earbuds, being the very first pair of fully wireless earbuds with active noise cancellation, something that the AirPods didn't have at the time, and of course, they came with a pretty massive charging case.
However, the noise cancellation apparently still sucked, barely making a difference compared to passive noise isolation.
But a year later, Sony released their best-in-class WF-1000XM3's, the earbuds that held the crown for having the best noise cancellation, even better than the AirPods Pro which were released later that year. But these new XM3's definitely weren't perfect.
The charging case was still absolutely massive compared to the AirPods Pro and it didn't even support wireless charging. The buds themselves were quite a bit more bulky and they offered zero sweat or water resistance compared to iPX4 on the AirPods Pro.
And now, in 2021, we finally have Sony's brand new XM4's, and like I said in the beginning of this review, these earbuds have basically reached their peak by fixing so many of the previous issues, all in one update, so let's get right into everything that's changed.
First up, the charging case has been totally redesigned, now less than half the size of the previous one, allowing you to finally be able to fit it into that little mini-pocket that comes on most pairs of jeans. And because of the flat bottom, it can now sit upright and finally support wireless charging. The finish got an update as well, with a new matte texture that's much more scratch resistant compared to the XM3's.
The inside of the case now looks much more clean and modern, no longer featuring blatantly visible rectangular magnets, with them now tucked underneath the plastic casing. And I also noticed that the magnets are now more powerful, giving you a satisfying snap when you place them into the case, as well as keeping them perfectly secure so they won't fall out if you drop the case.
As far as the earbuds themselves, they've also been completely redesigned with a more round, bulbous shape, a new matte finish and some new design details that really make them look and feel more premium than before, and I really like how the new foam eartips perfectly match the color and texture of the earbuds.
The flashing LED light on the XM3's is now gone, which I actually prefer because it made them look a bit cheesy, and I really like how the new XM4's now sit perfectly within your outer ear instead of sticking out the like old ones do, and I'm glad they removed the Sony logo from the face, giving them a more clean look.
However, I did find that this new fit isn't as comfortable as the old ones because it can sort of press against your ear, and on top of that, the new foam tips are a little annoying since you have to squish them each and every time you put them into your ears and then wait for the foam to expand before removing your finger.
And because of all of that, these Sony's are nowhere near as comfortable as the AirPods Pro, especially since they're heavier and they don't feature a venting system to relieve pressure from the inside of your ears like the AirPods Pro have.
So even though these new XM4's feature an incredible 8 hours of listening time with ANC enabled compared to 6 hours on the old XM3's and only 4.5 hours on the AirPods Pro, you absolutely cannot listen for 8 straight hours because your ears will start hurting after just a couple.
But thanks to the foam eartips, you get an incredibly good seal which helps the XM4's achieve the best noise cancelling that I've ever heard on any earbuds, destroying the AirPods Pro and removing so much noise that I can hear subtle creaks and pops inside of my own head as I look around, instead of the blaring A/C noise in our office which I can't hear at all.
These things are literally rivalling the noise cancellation of the AirPods Max which cancel almost every bit of noise on an Airplane flight.
They also have an ambient mode for the times when you need to hear something or talk to someone, which you can enable by tapping the left earbud, or you can use the speak to chat feature within the Sony headphones app, which automatically switches to ambient mode when you speak, and it works surprisingly well!
However, the ambient mode isn't the best since it introduces a bit of extra white noise, so it's nowhere near as good as the AirPods Pros transparency mode which basically makes it seem like you don't have anything in your ears at all, but the Sony's definitely get the job done.
The touch controls work much more reliably than before, and they're fully customizable for each ear within the app, which also comes with an equalizer with easy to use controls for different frequency bands. And as far as the sound quality, I'm completely blown away, even coming from the AirPods Pro.
The high notes, even in the bright preset which I recommend, are incredibly clean and not too sharp where they hurt your ears, which is something that I've experienced with the AirPods Pro, which unfortunately don't support EQ customization.
The mids and vocals on the Sony's are also just so clear and full, with not even a hint of distortion anywhere, with very impressive separation of frequencies, allowing you to hear the subtle notes from various instruments without having it all clash together like on some other earbuds.
And as far as the bass, it's really enjoyable, being very deep, punchy and tight, all at the same time, being kept together nicely even while high notes are simultaneously playing.
I honestly can't say the same for the AirPods Pro, that do have great bass reproduction, but lack a bit of that extra bass volume that the Sony's give you. I'm just extremely impressed, especially since they'll last up to 8 hours with noise cancelling enabled.
So as far as comparing the Sony XM4's to the AirPods Pro, they outclass them in terms of the overall sound quality, the noise cancellation, and the battery life, which are three of the most important features for fully wireless earbuds.
And on top of that, the other less important features now match up much better compared to the AirPods Pro, like getting a smaller case with wireless charging and finally getting IPX4 water resistance.
The only downsides include the Sony's being way less comfortable and not supporting multi-connect which is a bit weird considering the last main downside which is the higher $279 price tag compared to $250 for the AirPods Pro, but given the fact that the Pros are on sale right now for only $190 on Amazon, it does make the choice a bit more difficult, but I think I've figured it out.
🤡 If you're an Android user, seriously just pay the extra cash for the Sony's because you won't be getting anything from the Apple ecosystem with the AirPods Pro, and the Sony's also absolutely destroy the competition, including Samsung's Galaxy Buds Pro, But if you're an iPhone user, you've gotta choose what you'd like more, comfort, price and convenience with the Apple ecosystem with the AirPods Pro, or better sound quality, better battery life and the absolute best noise cancellation.
And to be completely honest, after hearing how good these Sony's are, I would probably go with these over the AirPods Pro, even though I have an Apple bias, and that says a lot about the Sony XM4's.
So hopefully you guys enjoyed this review, and we'll see you in the next reviews and news!👋


text:
package com.datumbox.framework.core.statistics.sampling;

import com.datumbox.framework.common.dataobjects.FlatDataCollection;
import com.datumbox.framework.common.dataobjects.FlatDataList;
import com.datumbox.framework.common.dataobjects.TransposeDataCollection;
import com.datumbox.framework.common.dataobjects.TransposeDataList;
import com.datumbox.framework.tests.Constants;
import com.datumbox.framework.tests.abstracts.AbstractTest;
import org.junit.Test;

import java.util.Arrays;

import static org.junit.Assert.assertEquals;

/**
 * Test cases for ClusterSampling.
 *
 * @author Vasilis Vryniotis <bbriniotis@datumbox.com>
 */
public class ClusterSamplingTest extends AbstractTest {

    private TransposeDataList generateClusterIdList() {
        TransposeDataList clusterIdList = new TransposeDataList();
        clusterIdList.put("cluster1", new FlatDataList(Arrays.asList(new Object[]{0,1,2,3,4,5,6,7,8,9})));
        clusterIdList.put("cluster2", new FlatDataList(Arrays.asList(new Object[]{10,11,12,13,14,15,16,17,18,19})));
        clusterIdList.put("cluster3", new FlatDataList(Arrays.asList(new Object[]{20,21,22,23,24,25,26,27,28,29})));
        clusterIdList.put("cluster4", new FlatDataList(Arrays.asList(new Object[]{30,31,32,33,34,35,36,37,38,39})));

        return clusterIdList;
    }

    private TransposeDataCollection generateSampleDataCollection() {
        TransposeDataCollection sampleDataCollection = new TransposeDataCollection();
        sampleDataCollection.put("cluster1", new FlatDataCollection(Arrays.asList(new Object[]{21,12,23,14,25,16,27,18,29,10})));
        sampleDataCollection.put("cluster2", new FlatDataCollection(Arrays.asList(new Object[]{11,12,13,14,15,16,17,18,19,20})));
        //sampleDataCollection.internalData.put("cluster3", new FlatDataCollection(Arrays.asList(new Object[]{31,2,33,4,35,6,37,8,39,0})));
        //sampleDataCollection.internalData.put("cluster4", new FlatDataCollection(Arrays.asList(new Object[]{1,32,3,34,5,36,7,38,9,30})));

        return sampleDataCollection;
    }

    /**
     * Test of nBar method, of class ClusterSampling.
     */
    @Test
    public void testNbar() {
        logger.info("Nbar");
        TransposeDataList clusterIdList = generateClusterIdList();

        double expResult = 10.0;
        double result = ClusterSampling.nBar(clusterIdList);
        assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH);
    }

    /**
     * Test of randomSampling method, of class ClusterSampling.
     */
    @Test
    public void testRandomSampling() {
        logger.info("randomSampling");
        TransposeDataList clusterIdList = generateClusterIdList();
        int sampleM = 2;
        double expResult = sampleM;
        TransposeDataCollection sampledIds = ClusterSampling.randomSampling(clusterIdList, sampleM);
        double result = sampledIds.size();
        assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH);
    }

    /**
     * Test of mean method, of class ClusterSampling.
     */
    @Test
    public void testMean() {
        logger.info("mean");
        TransposeDataCollection sampleDataCollection = generateSampleDataCollection();
        double expResult = 17.5;
        double result = ClusterSampling.mean(sampleDataCollection);
        assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH);
    }

    /**
     * Test of xbarVariance method, of class ClusterSampling.
     */
    @Test
    public void testXbarVariance() {
        logger.info("xbarVariance");
        TransposeDataCollection sampleDataCollection = generateSampleDataCollection();
        int populationM = 4;
        double Nbar = 10.0;
        double expResult = 2.0;
        double result = ClusterSampling.xbarVariance(sampleDataCollection, populationM, Nbar);
        assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH);
    }

    /**
     * Test of xbarStd method, of class ClusterSampling.
     */
    @Test
    public void testXbarStd() {
        logger.info("xbarStd");
        TransposeDataCollection sampleDataCollection = generateSampleDataCollection();
        int populationM = 4;
        double Nbar = 10.0;
        double expResult = 1.4142135623731;
        double result = ClusterSampling.xbarStd(sampleDataCollection, populationM, Nbar);
        assertEquals(expResult, result, Constants.DOUBLE_ACCURACY_HIGH);
    }

}