text:
Q: How to efficiently build a random list from a given list without recurrences in JS? I have a comma separated string, out of which I need to create a new string which contains a random order of the items in the original string, while making sure there are no recurrences.
For example:
Running 1,2,3,1,3 will give 2,3,1 and another time 3,1,2, and so on.
I have a code which picks a random item in the original string, and then iterates over the new string to see if it does not exist already. If it does not exist - the item is inserted.
However, I have a feeling this can be improved (in C# I would have used a hashtable, instead of iterating every time on the new array). One improvement can be removing the item we inserted from the original array, in order to prevent cases where the random number will give us the same result, for example.
I'd be happy if you could suggest improvements to the code below.
originalArray = originalList.split(',');
for (var j = 0; j < originalArray.length; j++) {
    var iPlaceInOriginalArray = Math.round(Math.random() * (originalArray.length - 1));
    var bAlreadyExists = false;
    for (var i = 0; i < newArray.length; i++) {
        if (newArray[i].toString() == originalArray[iPlaceInOriginalArray].toString()) {
            bAlreadyExists = true;
            break;
        }
    }

if (!bAlreadyExists)
    newArray.push(originalArray[iPlaceInOriginalArray]);
}

Thanks!

A: You can still use a 'hash' in javascript to remove duplicates. Only in JS they're called objects:
function removeDuplicates(arr) {
    var hash = {};
    for (var i=0,l=arr.length;i<l;i++) {
        hash[arr[i]] = 1;
    }
    // now extract hash keys... ahem...
    // I mean object members:
    arr = [];
    for (var n in hash) {
        arr.push(n);
    }
    return arr;
}

Oh, and the select random from an array thing. If it's ok to destroy the original array (which in your case it is) then use splice:
function randInt (n) {return Math.floor(Math.random()*n)}

function shuffle (arr) {
    var out = [];
    while (arr.length) {
        out.push(
            arr.splice(
                randInt(arr.length),1 ));
    }
    return out;
}

// So:
newArray = shuffle(
               removeDuplicates(
                   string.split(',') ));

A: // If you sort the first array, it is quicker to skip duplicates, and you can splice each unique item into its random position as you build the new array.
var s= 'Function,String,Object,String,Array,Date,Error,String,String,'+
'Math,Number,RegExp,Group,Collection,Timelog,Color,String';
var A1= s.split(',').sort(), A2= [], tem;
while(A1.length){
 tem= A1.shift();
 while(A1[0]== tem) tem= A1.shift();
 if(tem) A2.splice(Math.floor(Math.random()*A2.length), 0, tem);
}

alert(A2.join(', '))

A: With your solution, you are not guaranteed not to pick same number several times, thus leaving some others of them never being picked. If the number of elements is not big (up to 100), deleting items from the source array will give the best result.
Edit
originalArray = originalList.split(',');
for (var j = 0; j < originalArray.length; j++) {
    var iPlaceInOriginalArray = Math.round(Math.random() * (originalArray.length - 1 - j));
var bAlreadyExists = false;
for (var i = 0; i < newArray.length; i++) {
    if (newArray[i].toString() == originalArray[iPlaceInOriginalArray].toString()) {
        bAlreadyExists = true;
        break;
    }
}

var tmp = originalArray[originalArray.length - 1 - j];
originalArray[originalArray.Length - 1 - j] = originalArray[iPlaceInOriginalArray];
originalArray[iPlaceInOriginalArray] = tmp;

if (!bAlreadyExists)
    newArray.push(originalArray[iPlaceInOriginalArray]);
}

redpajama_set_name: RedPajamaStackExchange


"The Timber Release Plan was due a year ago. The Government appears to be drip feeding snippets of information to the media promising that some release is due sometime. This is playing with the lives of Victorians who expect more care and concern from their Government. Native contractors in Gippsland are struggling to meet their contracted supply, have no money to pay the bills, and many are reporting a growing sense of despair," she said.
VAFI CEO, Tim Johnston, said politics should play no part in the security of people's well-being.
"But for months now that's what the Andrews Government has been doing to hard-working Victorians in the native timber industry. The Government's ongoing failure to approve a new Timber Release Plan is on the verge of bringing the hardwood industry to a standstill and is having a detrimental impact on the mental health of those affected.
"The Andrews Government has turned its back on these timber workers. This has gone on for too long. More than 1600 directly affected regional workers are at desperation point," he said.
AFPA CEO, Ross Hampton, said the failure of the release of the timber plan is part of a larger wrong the Government is committing to regional workers and regional communities.
"The Government claims it is in the process of modernising Regional Forest Agreements, which are the agreed management processes used across Australia to manage the environmental, social and economic balance in using our precious forest resources," he said.
"Regional Forest Agreements have been signed between the Commonwealth Government and the State Governments of NSW, Tasmania and the Labor Government of Western Australia. The industry is deeply suspicious that the behaviour of the Victorian Government suggests that 'modernising' means that the Victorian Government actually is planning a reduction of area available for harvest. This would be ridiculous as only six per cent of the Victorian timber estate is available and suitable for harvest now and any further reduction beyond the thousands of hectares which have been added to national parks would potentially drive the industry and the regional jobs which rely on it into collapse.


text:
Red Sox Report
Lester's whiffs mounting
11yGordon Edes
What to know about 2022 Baseball Hall of Fame vote: Is Ortiz getting in? Will Bonds, Clemens fall short?
One fun fact you (probably) did not know for all 30 MLB teams
Ranking MLB's top 10 teams: A Braves repeat? Are Mets N.Y.'s best? Who will own the AL?
15dBuster Olney
15dJeff Passan and Jesse Rogers
'Maybe the best playoff pitcher ever': What made Jon Lester an October legend and potential Hall of Famer
17dJesse Rogers
Lester retires with 200 wins, 3 World Series rings
Former Mets acting GM Scott acquitted of DUI
The best and worst MLB free-agent signings of the past decade
30dDavid Schoenfield
Gordon EdesESPN Staff Writer
Has covered Red Sox for 15 years
Award-winning beat reporter
BOSTON -- Jon Lester's 10 strikeouts in six innings Monday night gave him six games of 10 or more whiffs this season, matching Cliff Lee of Texas for the league lead.
Lester, who has K'd 10 or more in each of his last three starts, begin the night third in the AL in whiffs with 196, behind only Felix Hernandez of the Mariners (209) and Jered Weaver of the Angels (205).
Lester may have as many as five more starts to exceed the career-best 225 batters he struck out in 203 1/3 innings last season. He has pitched 182 innings so far this season.
Lester already has had 13 games of 10 or more strikeouts in his career, which ties him with Bruce Hurst for fourth most in Red Sox history. Pedro Martinez holds the club record with 72, four more than Roger Clemens. Smokey Joe Wood is third with 33.
Lester's first 10-K game came on June 21, 2006. Since then, Josh Beckett has had five 10-strikeout games, Daisuke Matsuzaka three, Curt Schilling two and John Lackey (for the Red Sox) and Clay Buchholz one apiece.
Trivia question: One Sox pitcher had 10 games of 10 K's or more for the Sox before his 23d birthday, and never had another. Can you name him? (Hint: post-1960).
On a semi-related note is this great story told Tuesday night by longtime baseball executive and scout Joe McIlvaine. In 1981, McIlvaine, then the Mets scouting director, reassigned one of his area scouts from Michigan to Texas. The scout recommended a junior college pitcher drafted by the Mets in the 13th round.
The scout told McIlvaine the team should give the pitcher $25,000 to sign, a not-insignificant amount at the time. McIlvaine sent another scout to see the pitcher; he said the club should not give him more than $15,000. McIlvaine had gone twice to see the pitcher himself, but each time the game was rained out. McIlvaine deferred to the veteran scout.
"And for the difference of $10,000,'' McIlvaine said, "we passed on Roger Clemens. We could have had Clemens and Dwight Gooden at the same time.
"Some things,'' he said, "just aren't meant to be.''
Clemens, who was not drafted out of high school, transferred to the University of Texas and was drafted in the first round two years later by the Red Sox.
Trivia answer: Dave Morehead struck out 10 or more 10 times before he turned 23, the first time as a 20-year-old in 1963. Morehead, who was 23 when he threw a no-hitter against the Cleveland Indians, had arm injuries that short-circuited his career, though he appeared twice in relief in the 1967 World Series.

redpajama_set_name: RedPajamaCommonCrawl


text:
AAC Clyde Space Skip to Content
Satellite BitsToggle subsection
Command & Data Handling
Solar Arrays
EPIC SpacecraftToggle subsection
EPIC 12U
EPIC 6U
Space as a ServiceToggle subsection
About UsToggle subsection
Artboard 1 Search
Basket 0 Search Artboard 1
Space Missions for the Environment
Extreme weather events were responsible for much devastation to many regions of our planet in 2019 and these events can be largely attributed to the effects of climate change. They range from excessive rainfall, coastal flooding, heatwaves, drought and forest fires - such as the recent fires in Australia.
According to the United Nations, between the period of 1998–2017 the direct economic losses from disasters were estimated at almost USD 3 trillion and climate-related and geophysical disasters claimed an estimated 1.3 million lives. With greenhouse gas emissions rising at a rate much faster than anticipated, more ambitious plans and accelerated actions are needed.
Satellites are one of the most vital tools to better understand our planet. They enable us to capture a global view of what is happening across the planet. This gives us the ability to monitor events in real-time and look for trends in changes to key climate change indicators such as the size of the polar icecaps. Academia, government agencies and industry are joining forces like never before to design increasingly accurate instruments and satellites to improve environmental surveillance and generate reliable data, filling in the gaps of our understanding for informed decision making.
The first climate satellite was launched in 1959, Vanguard II, and was the first weather satellite, designed to measure cloud coverage and the density of the atmosphere. The Earth Radiation Budget Satellite (ERBS), launched in 1984, provided an early insight into how human activities, such as the burning of fossil fuels, affect the planet's radiation balance, and helped discover the hole in the ozone layer. A further addition to this network of global satellites was the European Space Agency's (ESA) Sentinel-3A, which launched in 2016. The satellite was designed to collate data on ocean surface temperature and map the extent and topography of ice.
These satellites have been collecting data to monitor our planet's ecosystems in a way that could not be achieved by any other means. This space activity is known as Earth Observation or Remote Sensing and is now increasingly being carried out by advanced small satellites and nanosatellites.
Nanosatellites, like our CubeSats, have demonstrated impressive spacebased capabilities stretching across a vast range of applications. The low-cost, high performance nature of CubeSats is opening up access to space for small countries, institutions and commercial organisations. When deployed as a fleet these cutting-edge small satellites can be used to provide near-real time global coverage and measurements.
AAC Clyde Space have recently delivered a 3U scientific CubeSat, PICASSO (Pico-Satellite for Atmospheric and Space Science Observations), an ESA (European Space Agency) earth observation demonstration mission, which will map the ozone in the stratosphere and measure electron density and temperature in the plasma around the satellite.
The Ozone in the high atmosphere is critical for life on Earth as it shields the Sun's UV radiation, so accurate and timely information about its density is critical for humanity. PICASSO aims to show that such measurements can be successfully done with very small satellites.
The Earth's oceans are a vast ecosystem that represents some 99 per cent of the Earth's living volume and delivers numerous benefits to humanity. It is known that climate change is altering the sea concentrations, riverflow and causing costal erosion in turn threatening the survival of certain ecosystems. Our oceans are also subject to neglect and pollution which, if left unchecked, could be devasting for the future of our planet. Spacebased remote sensing provides a means of observing our oceans which would otherwise be impossible using planes and ships alone.
Sustained ocean color monitoring is vital to understanding the marine ecosystem. It has been identified as an Essential Climate Variable (ECV) and is a vital parameter in understanding long-term climate change. Furthermore, observations can be beneficial in observing oil spills, harmful algal blooms and the health of fisheries.
AAC Clyde Space are part of the SOCON project (Sustained Ocean Color Observations using Nanosatellites), a collaboration between the University of North Carolina at Wilmington (UNCW), Cloudland Instruments and NASA's Goddard Space Flight Centre, to construct, launch and operate 2-SeaHawk CubeSats with HawkEye Ocean Color Sensors. The first satellite, Seahawk-1, was launched in 2019.
The aim of the project is to observe the changing biology of the ocean surface and these first two spacecraft are a precursor to a possible constellation of SeaHawk satellites which would provide continuous measurement of ocean color data. Seahawk is a follow-on mission from the highly successful SeaWiFS (Sea-Viewing Wide field-of-View Sensor) mission, launched in 1997. Over 20 years on, Seahawk is able to replicate the performance of the SeaWiFS mission except it is approximately 100 times smaller, lighter and cheaper.
The two identical AAC Clyde Space built SeaHawk spacecraft carry a cutting-edge multispectral imager called 'HawkEye' to perform Ocean Colour monitoring. The data will be integrated into NASA's SeaWiFS Data Analysis System (SeaDAS) and will be distributed worldwide by the NASA Ocean Biology Distributed Active Archive Center at Goddard Space Flight Center. The data gathered by SeaHawk will enable greater understanding of the marine food chain, oceanic climate, fisheries and pollution phenomena. This information will be vital to our ability to monitor and support the health and the and sustainability of our oceans.
Up next...
AAC CLYDE SPACE RECEIVE GBP 2.3M GRANT FROM SCOTTISH ENTERPRISE
Copyright © 2021 AAC Clyde Space. All rights reserved.


Warning! GuruFocus has detected 2 Severe Warning Signs with NYSE:GE. Click here to check it out.
NYSE:GE has been successfully added to your Stock Email Alerts list.
NYSE:GE has been removed from your Stock Email Alerts list.


text:
<?php

/** @see PHPUnit_Framework_Constraint */
require_once 'PHPUnit/Framework/Constraint.php';

/** @see Zend_Dom_Query */
require_once 'Zend/Dom/Query.php';

/**
 * Zend_Dom_Query-based PHPUnit Constraint
 *
 * @uses       PHPUnit_Framework_Constraint
 * @category   Zend
 * @package    Zend_Test
 * @subpackage PHPUnit
 * @copyright  Copyright (c) 2005-2014 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
class Zend_Test_PHPUnit_Constraint_DomQuery extends PHPUnit_Framework_Constraint
{
    /**#@+
     * Assertion type constants
     */
    const ASSERT_QUERY            = 'assertQuery';
    const ASSERT_CONTENT_CONTAINS = 'assertQueryContentContains';
    const ASSERT_CONTENT_REGEX    = 'assertQueryContentRegex';
    const ASSERT_CONTENT_COUNT    = 'assertQueryCount';
    const ASSERT_CONTENT_COUNT_MIN= 'assertQueryCountMin';
    const ASSERT_CONTENT_COUNT_MAX= 'assertQueryCountMax';
    /**#@-*/

    /**
     * Current assertion type
     * @var string
     */
    protected $_assertType        = null;

    /**
     * Available assertion types
     * @var array
     */
    protected $_assertTypes       = array(
        self::ASSERT_QUERY,
        self::ASSERT_CONTENT_CONTAINS,
        self::ASSERT_CONTENT_REGEX,
        self::ASSERT_CONTENT_COUNT,
        self::ASSERT_CONTENT_COUNT_MIN,
        self::ASSERT_CONTENT_COUNT_MAX,
    );

    /**
     * Content being matched
     * @var string
     */
    protected $_content           = null;

    /**
     * Whether or not assertion is negated
     * @var bool
     */
    protected $_negate            = false;

    /**
     * CSS selector or XPath path to select against
     * @var string
     */
    protected $_path              = null;

    /**
     * Whether or not to use XPath when querying
     * @var bool
     */
    protected $_useXpath          = false;

    /**
     * XPath namespaces
     * @var array
     */
    protected $_xpathNamespaces = array();

    /**
     * Constructor; setup constraint state
     *
     * @param  string $path CSS selector path
     * @return void
     */
    public function __construct($path)
    {
        $this->_path = $path;
    }

    /**
     * Indicate negative match
     *
     * @param  bool $flag
     * @return void
     */
    public function setNegate($flag = true)
    {
        $this->_negate = $flag;
    }

    /**
     * Whether or not path is a straight XPath expression
     *
     * @param  bool $flag
     * @return Zend_Test_PHPUnit_Constraint_DomQuery
     */
    public function setUseXpath($flag = true)
    {
        $this->_useXpath = (bool) $flag;
        return $this;
    }

    /**
     * Evaluate an object to see if it fits the constraints
     *
     * @param  string       Response content to be matched against (haystack)
     * @param  null|string  Assertion type
     * @param  string       (optional) String to match (needle), may be required depending on assertion type
     * @return bool
     *
     * NOTE:
     * Drastic changes up to PHPUnit 3.5.15 this was:
     *     public function evaluate($other, $assertType = null)
     * In PHPUnit 3.6.0 they changed the interface into this:
     *     public function evaluate($other, $description = '', $returnResult = FALSE)
     * We use the new interface for PHP-strict checking, but emulate the old one
     */
    public function evaluate($content, $assertType = '', $match = FALSE)
    {
        if (strstr($assertType, 'Not')) {
            $this->setNegate(true);
            $assertType = str_replace('Not', '', $assertType);
        }

        if (strstr($assertType, 'Xpath')) {
            $this->setUseXpath(true);
            $assertType = str_replace('Xpath', 'Query', $assertType);
        }

        if (!in_array($assertType, $this->_assertTypes)) {
            require_once 'Zend/Test/PHPUnit/Constraint/Exception.php';
            throw new Zend_Test_PHPUnit_Constraint_Exception(sprintf('Invalid assertion type "%s" provided to %s constraint', $assertType, __CLASS__));
        }

        $this->_assertType = $assertType;

        $method   = $this->_useXpath ? 'queryXpath' : 'query';
        $domQuery = new Zend_Dom_Query($content);
        $domQuery->registerXpathNamespaces($this->_xpathNamespaces);
        $result   = $domQuery->$method($this->_path);

        switch ($assertType) {
            case self::ASSERT_CONTENT_CONTAINS:
                if (!$match) {
                    require_once 'Zend/Test/PHPUnit/Constraint/Exception.php';
                    throw new Zend_Test_PHPUnit_Constraint_Exception('No content provided against which to match');
                }
                $this->_content = $match;
                return ($this->_negate)
                    ? $this->_notMatchContent($result, $match)
                    : $this->_matchContent($result, $match);
            case self::ASSERT_CONTENT_REGEX:
                if (!$match) {
                    require_once 'Zend/Test/PHPUnit/Constraint/Exception.php';
                    throw new Zend_Test_PHPUnit_Constraint_Exception('No pattern provided against which to match');
                }
                $this->_content = $match;
                return ($this->_negate)
                    ? $this->_notRegexContent($result, $match)
                    : $this->_regexContent($result, $match);
            case self::ASSERT_CONTENT_COUNT:
            case self::ASSERT_CONTENT_COUNT_MIN:
            case self::ASSERT_CONTENT_COUNT_MAX:
                if (!$match) {
                    require_once 'Zend/Test/PHPUnit/Constraint/Exception.php';
                    throw new Zend_Test_PHPUnit_Constraint_Exception('No count provided against which to compare');
                }
                $this->_content = $match;
                return $this->_countContent($result, $match, $assertType);
            case self::ASSERT_QUERY:
            default:
                if ($this->_negate) {
                    return (0 == count($result));
                } else {
                    return (0 != count($result));
                }
        }
    }

    /**
     * Report Failure
     *
     * @see    PHPUnit_Framework_Constraint for implementation details
     * @param  mixed    CSS selector path
     * @param  string   Failure description
     * @param  object   Cannot be used, null
     * @return void
     * @throws PHPUnit_Framework_ExpectationFailedException
     * NOTE:
     * Drastic changes up to PHPUnit 3.5.15 this was:
     *     public function fail($other, $description, $not = false)
     * In PHPUnit 3.6.0 they changed the interface into this:
     *     protected function fail($other, $description, PHPUnit_Framework_ComparisonFailure $comparisonFailure = NULL)
     * We use the new interface for PHP-strict checking
     */
    public function fail($other, $description, PHPUnit_Framework_ComparisonFailure $cannot_be_used = NULL)
    {
        require_once 'Zend/Test/PHPUnit/Constraint/Exception.php';
        switch ($this->_assertType) {
            case self::ASSERT_CONTENT_CONTAINS:
                $failure = 'Failed asserting node denoted by %s CONTAINS content "%s"';
                if ($this->_negate) {
                    $failure = 'Failed asserting node DENOTED BY %s DOES NOT CONTAIN content "%s"';
                }
                $failure = sprintf($failure, $other, $this->_content);
                break;
            case self::ASSERT_CONTENT_REGEX:
                $failure = 'Failed asserting node denoted by %s CONTAINS content MATCHING "%s"';
                if ($this->_negate) {
                    $failure = 'Failed asserting node DENOTED BY %s DOES NOT CONTAIN content MATCHING "%s"';
                }
                $failure = sprintf($failure, $other, $this->_content);
                break;
            case self::ASSERT_CONTENT_COUNT:
                $failure = 'Failed asserting node DENOTED BY %s OCCURS EXACTLY %d times';
                if ($this->_negate) {
                    $failure = 'Failed asserting node DENOTED BY %s DOES NOT OCCUR EXACTLY %d times';
                }
                $failure = sprintf($failure, $other, $this->_content);
                break;
            case self::ASSERT_CONTENT_COUNT_MIN:
                $failure = 'Failed asserting node DENOTED BY %s OCCURS AT LEAST %d times';
                $failure = sprintf($failure, $other, $this->_content);
                break;
            case self::ASSERT_CONTENT_COUNT_MAX:
                $failure = 'Failed asserting node DENOTED BY %s OCCURS AT MOST %d times';
                $failure = sprintf($failure, $other, $this->_content);
                break;
            case self::ASSERT_QUERY:
            default:
                $failure = 'Failed asserting node DENOTED BY %s EXISTS';
                if ($this->_negate) {
                    $failure = 'Failed asserting node DENOTED BY %s DOES NOT EXIST';
                }
                $failure = sprintf($failure, $other);
                break;
        }

        if (!empty($description)) {
            $failure = $description . "\n" . $failure;
        }

        throw new Zend_Test_PHPUnit_Constraint_Exception($failure);
    }

    /**
     * Complete implementation
     *
     * @return string
     */
    public function toString()
    {
        return '';
    }

    /**
     * Register XPath namespaces
     *
     * @param   array $xpathNamespaces
     * @return  void
     */
    public function registerXpathNamespaces($xpathNamespaces)
    {
        $this->_xpathNamespaces = $xpathNamespaces;
    }

    /**
     * Check to see if content is matched in selected nodes
     *
     * @param  Zend_Dom_Query_Result $result
     * @param  string $match Content to match
     * @return bool
     */
    protected function _matchContent($result, $match)
    {
        $match = (string) $match;

        if (0 == count($result)) {
            return false;
        }

        foreach ($result as $node) {
            $content = $this->_getNodeContent($node);
            if (strstr($content, $match)) {
                return true;
            }
        }

        return false;
    }

    /**
     * Check to see if content is NOT matched in selected nodes
     *
     * @param  Zend_Dom_Query_Result $result
     * @param  string $match
     * @return bool
     */
    protected function _notMatchContent($result, $match)
    {
        if (0 == count($result)) {
            return true;
        }

        foreach ($result as $node) {
            $content = $this->_getNodeContent($node);
            if (strstr($content, $match)) {
                return false;
            }
        }

        return true;
    }

    /**
     * Check to see if content is matched by regex in selected nodes
     *
     * @param  Zend_Dom_Query_Result $result
     * @param  string $pattern
     * @return bool
     */
    protected function _regexContent($result, $pattern)
    {
        if (0 == count($result)) {
            return false;
        }

        foreach ($result as $node) {
            $content = $this->_getNodeContent($node);
            if (preg_match($pattern, $content)) {
                return true;
            }
        }

        return false;
    }

    /**
     * Check to see if content is NOT matched by regex in selected nodes
     *
     * @param  Zend_Dom_Query_Result $result
     * @param  string $pattern
     * @return bool
     */
    protected function _notRegexContent($result, $pattern)
    {
        if (0 == count($result)) {
            return true;
        }

        foreach ($result as $node) {
            $content = $this->_getNodeContent($node);
            if (preg_match($pattern, $content)) {
                return false;
            }
        }

        return true;
    }

    /**
     * Determine if content count matches criteria
     *
     * @param  Zend_Dom_Query_Result $result
     * @param  int $test Value against which to test
     * @param  string $type assertion type
     * @return boolean
     */
    protected function _countContent($result, $test, $type)
    {
        $count = count($result);

        switch ($type) {
            case self::ASSERT_CONTENT_COUNT:
                return ($this->_negate)
                    ? ($test != $count)
                    : ($test == $count);
            case self::ASSERT_CONTENT_COUNT_MIN:
                return ($count >= $test);
            case self::ASSERT_CONTENT_COUNT_MAX:
                return ($count <= $test);
            default:
                return false;
        }
    }

    /**
     * Get node content, minus node markup tags
     *
     * @param  DOMNode $node
     * @return string
     */
    protected function _getNodeContent(DOMNode $node)
    {
        if ($node instanceof DOMAttr) {
            return $node->value;
        } else {
            $doc     = $node->ownerDocument;
            $content = $doc->saveXML($node);
            $tag     = $node->nodeName;
            $regex   = '|</?' . $tag . '[^>]*>|';
            return preg_replace($regex, '', $content);
        }
    }
}

redpajama_set_name: RedPajamaGithub


You are visiting the placeholder page for James Church. This page is here because someone used our placeholder utility to look for James Church. We created this page automatically in hopes James Church would find it. If you are not James Church, but are an alumni of Fenton High School Fenton, MI, register on this site for free now.


text:
Parent and Carers
Curriculum and Exam information
MSN Sixth
Somervale School
Back to 'Parents & Carers'
2018 Exam Results
Midsomer Norton Schools Partnership schools excel despite tougher exams.
Once again Norton Hill and Somervale posted some phenomenal GCSE results. Following the extremely strong A levels last week, students at both schools in the town have achieved some excellent outcomes.
At Somervale it was a similar story with nearly 60% of students achieving a grade 4 pass in both English and Maths. English was another success story with record numbers of 9 -7 grades being achieved. Other subject areas achieving record results were History with over 30% of students achieving a grade 9 - 7, Computer Science with over 30% grade 9 -7 and BTEC Business studies with 50% of the grades Distinction* - Distinction. VCERT Catering and Resistant Materials also performed extremely well along with IT BTEC achieving nearly 40% A* - A grades. The number of students achieving the top grades of 7, 8 and 9 has continued to rise.
Headteacher Joanna Postlethwaite said "It has been another fantastic year at Somervale. I am so proud of the students and the level of hard work they put into achieving these results. Both the students and staff deserve to be very happy with their achievement. With such a lot of change in both the courses and the grading, it has been very reassuring to see that standards in the school have continued to rise. We have our largest year group ever joining in September and I have no doubt that Somervale School will continue to go from strength to strength over the coming years".
At Norton Hill, students produced another superb set of results with over 80% achieving a grade 4 pass in both English and Maths. This is equivalent to the old A*‐C measure. Even more impressive was the percentage of students achieving a grade 5 or above in both subjects, which currently stands at 55%. Nationally, the figure is thought to be around about 45% this year. In other areas of the curriculum, results were equally as impressive. Science saw 80% of grades at 4 or above, and most other subjects were above 75% grades 9-4. In the 5 9-4/A*‐C including English and Maths measure, the school again achieved incredible outcomes with over 80% achieving this gold standard. In terms of progress, Norton Hill expects to again be in the top 20% nationally.
Headteacher Gordon Green said "It is so rewarding when the months of hard work and exam preparation are reflected by such wonderful outcomes. I am deeply proud of the efforts from all the students and it is especially pleasing to realise such good outcomes from our disadvantaged children and those with a special educational need. Finally, a big thank you to all the staff at Norton Hill who work so hard each year to make a difference to the lives of our students and indeed the parents/carers who work in partnership with us."
To View our results please click here
© 2023 by Somervale School.


text:
Zbraslav (deutsch Sbraslaus, auch Zbraslau) ist eine Gemeinde in Tschechien. Sie liegt neun Kilometer südöstlich von Velká Bíteš und gehört zum Okres Brno-venkov.

Geographie
Zbraslav befindet sich in der Křižanovská vrchovina auf einer Anhöhe rechtsseitig über dem Tal des Bílá voda. In Zbraslav entspringen die Bäche Dolina und Žleb. Südwestlich des Dorfes liegt ein Militärgelände. Südöstlich befindet sich im Tal des Bílá voda die erloschene Ansiedlung Lhotka.

Nachbarorte sind Zálesná Zhoř und Zhořský Dvůr im Norden, Rudka im Nordosten, Litostrov und Říčany im Osten, Mariánské Údolí und Zastávka im Südosten, Příbram na Moravě im Süden, Březina, Rapotice und Lesní Jakubov im Südwesten, Újezd u Rosic im Westen sowie Stanoviště und Ludvíkov im Nordwesten.

Geschichte
Die erste schriftliche Erwähnung des Ortes erfolgte 1222 als Eintragung des Besitzes des Gerhard von Zbraslav (Gerhard ze Zbraslavi), der der Stammvater der Herren von Kunstadt war. Ihm folgte dessen ältester Sohn Boček von Jaroslavice und Zbraslav, der den ihm gehörenden Wald bei Zbraslav 1255 testamentarisch dem Kloster Žďár vermachte. Sein Bruder Mikul/Mikuláš erhielt einen weiteren Teil von Zbraslav, er begründete die Linie der Vladiken Mikul von Zbraslav (Mikulova Linie). Seit 1294 ist in Zbraslav eine Pfarre nachweislich. 1334 schenkten die Nachkommen des Mikul von Zbraslav ihren Anteil dem Zisterzienserinnenkloster Aula Sanctae Mariae in Alt Brünn. Einen weiteren Anteil des Dorfes besaß das Zisterzienserinnenkloster Vallis Sanctae Mariae in Oslavany. In der Mitte des 14. Jahrhunderts waren die Zbraslaver Güter stark zersplittert. Zwischen 1366 und 1381 erwarb Peter Hecht von Rossitz sukzessive mehrere Anteile, so dass er schließlich, mit Ausnahme der Oslawaner Klosterseite und der Alt Brünner Klosterseite, etwa die Hälfte von Zbraslav besaß. Insgesamt hatte das Dorf zu dieser Zeit etwa 400 Einwohner; es bestand aus der Pfarre, drei Höfen, 25 Huben und 26 kleinen Anwesen. Nachdem das Kloster Oslavany 1525 erloschen war, fielen die Oslawaner Klosterseite dem Alt Brünner Zisterzienserinnenkloster zu und beide Klosterseiten wurden vereint. Die Klosterseite bildete den reicheren Teil des Dorfes, sie führte ab 1615 ein Siegel und hatte einen eigenen Bürgermeister, Richter und Schöppen. Nach der Aufhebung des Zisterzienserinnenklosters Alt Brünn fiel die Klosterseite 1783 dem Religionsfond zu. 1840 wurde dieser Teil an Franz Ritter von Heintl verkauft. Drei Jahre später erwarb ihn Heinrich Eduard Fürst Schönburg-Hartenstein.

Nach der Aufhebung der Patrimonialherrschaften wurden 1850 die Klosterseite und die Rossitzer Seite sowie Březina zu einer Gemeinde Zbraslav im Brünner Bezirk vereint. Die Güter und Wälder der Klosterseite erbte 1872 Alexander Fürst Schönburg-Hartenstein und 1896 Alois Fürst Schönburg-Hartenstein. Ab 1900 gehörte die Gemeinde Zbraslav zum Bezirk Velké Meziříčí. 1921 wurden die Oslawaner Klosterwälder des Fürsten Schönburg-Hartenstein verstaatlicht. Im Zuge der Bodenreform von 1925 fiel auch der Großgrundbesitz Rossitz-Eichhorn des Barons De Forest an den tschechoslowakischen Staat. Im Jahre 1948 wurde die Gemeinde dem Okres Velká Bíteš zugeordnet. Nach dessen Aufhebung kam Zbraslav 1961 zum Okres Brno-venkov zurück.

Gemeindegliederung
Für die Gemeinde Zbraslav sind keine Ortsteile ausgewiesen. Zu Zbraslav gehört die Ansiedlung Březina (Bschesina).

Sehenswürdigkeiten
 Pfarrkirche des hl. Ägidius, die im 13. Jahrhundert errichtete Kapelle wurde im 14. Jahrhundert durch den Anbau des Schiffes und Turmes zur Kirche erweitert
 Statue des hl. Johannes von Nepomuk, geschaffen 1780. Die barocke Sandsteinfigur wurde im Februar 2003 vom Sockel gehoben und gestohlen
 Säule des hl. Wendelin aus dem Jahre 1781
 Sandsteinkreuz im Mariental bei der erloschenen Ansiedlung Lhotka, aus dem Jahre 1769
 Reste der Feste Hradisko, auf einem Sporn über dem Mariental des Bílá voda
 Sühnestein von 1596, nordwestlich des Dorfes an der Straße nach Velká Bíteš im Wald

Einzelnachweise

Ersterwähnung 1222

redpajama_set_name: RedPajamaWikipedia


text:
DA Krasner: At long last, turn the page on Mumia Abu-Jamal case
SUCCESS: Krasner has dropped his challenge. Mumia can appeal for his freedom!
Philadelphia District Attorney Larry Krasner is challenging a judge's ruling that Mumia Abu Jamal has the right to re-appeal his case. Learn more here.
Sign this petition to District Attorney Krasner:
Dear District Attorney Krasner:
As you know, respected human rights groups like Amnesty International have criticized the 1982 trial that convicted Mumia Abu-Jamal – as well as the corrupted appeals process that followed. Amnesty pointed to racial bias at the trial and "possible political influences that may have prevented him from receiving an impartial and fair hearing." Since that tainted trial, Mr. Abu-Jamal has spent roughly 37 years in prison, much of it on death row in solitary confinement.
After Judge Leon Tucker recently granted Mr. Abu-Jamal the right of appeal based on the appearance of bias in the appeals process, we were dismayed to hear you have decided to challenge Judge Tucker's decision, apparently over concern that it might open the way for appeals by other less prominent convicted prisoners.
We urge you to drop your appeal of Judge Tucker's ruling – and we ask you: Given the racial, judicial and political biases that have tarnished Mr. Abu-Jamal's case from day one, isn't nearly four decades behind bars more than enough?


text:
READER BULLETINS: Aug. 23-29, 2018
August 22, 2018 - +FIVE, Featured Stories, Reader Bulletins - no comments
To list your event in the Reader Bulletins email editor@rutlandreader.com
SMITH-GILBERT PIPE ORGAN DEDICATION
The new pipe organ at St. Luke's Episcopal Church in Fair Haven, VT, will be officially dedicated on August 23, at 7 p.m. Three organists will share the event on the five-rank instrument, which was installed in June of this year by the builder, Timothy E. Smith of Portageville, New York. Walden Moore of New Haven, Connecticut, the organist/choirmaster of one of the largest Episcopal Churches in New England, Trinity Church on the Green, will be featured, as well as Timothy Smith, the instrument's designer and builder, and June Hale, organist/choirmaster at St. Luke's. Also featured in the dedication recital will be the newly formed children's choir of St. Luke's, accompanied by the organ and a professional organist and violinist, David von Behren of New Haven, CT.
The church is located at 146 N. Main St, Fair Haven, VT. The admission is free and there will be a reception during the evening. All are welcome. For more information, call June Hale at 802-537-2198 or email her at junehale2015@gmail.com.
"SHINE ON SHELBY" BENEFIT SLATED FOR AUGUST 25
Andy McEachron is once again organizing a fundraiser to honor Andy and Suzanne McEachron's late daughter Shelby on Saturday, Aug. 25 at the Lake St. Catherine Country Club, Route 30, Poultney. "Shine on Shelby" will open with a golf tournament at 8 a.m. at the Lake St. Catherine Country Club. Shotgun start is at 8:30 a.m. Entry fee is $80 per person for a four-person team, which includes golf, cart, prizes and food. To enter, contact Andy McEachron at 518-791-0105. In the evening, starting at 6 p.m., the event transitions into a dinner at the country club that will feature both a silent and live auction. A Surf & Turf dinner will be served at 7 p.m., followed by the live auction at 8 p.m.
More information is available on the Shine on Shelby Facebook page. Tickets to the dinner and auction are $85 per person or $150 per couple. To purchase, contact Andy McEachron at 518-791-0105 or email ssamac@aol.com.
All proceeds from the event will support the Shine on Shelby project for the improvements at the Granville Little League Fields and the Haynes House of Hope, a comfort care home for the terminally ill in Granville, New York.
RUTLAND YOUTH THEATRE OPEN AUDITIONS
Award-winning Rutland Youth Theatre holds open auditions for one of the most beautiful of all fairy tales, "The Snow Queen" by Hans Christian Andersen.
Audition times are August 26 from 3-6 p.m. and August 27 from 5:30-8:30 p.m. (registration starts ½ hour earlier on both days) at Rutland Youth Theatre, Courcelle Building, 16 North Street Extension, Rutland, VT.
Rehearsals will be a variety of one midweek evening for leads as well as Saturday and Sunday late morning or afternoons for all cast.
Show times are October 12th at 7pm and October 13th at 2pm and 7pm at the Theatre at Rutland Intermediate School. Tickets just $6 children/seniors and $8 adults.
Grades K-12 may audition. Choose one audition only but stay for the duration of the audition! Visit our website www.rutlandrec.com/theatre and click on the Audition Sheet tab on the right. Please print off and complete the audition form to bring with you. For more information visit our website at www.rutlandrec.com/theatre or call Mikki Lane at (802) 683-0019.
Rutland Youth Theatre is part of the Rutland Recreation and Parks Department and is a non-for-profit organization. For more information on upcoming productions and workshops, please visit www.rutlandrec.com/theatre or visit us on Facebook.
CONCUSSIONS: INFORMATION FOR ATHLETES, PARENTS & COACHES
Rutland Regional Medical Center will be holding a free community presentation on concussion injury, on Thursday, August 30 from 6 – 8 p.m. in the CVPS/Leahy Community Education Center at Rutland Regional.
Certified athletic trainers from iSport and Vermont Orthopaedic Clinic will discuss the latest and most up-to-date information on concussion injuries. They will discuss the myths and misconceptions concerning concussions and provide information regarding the diagnosis of an injury, as well as return-to-learn and return-to-play guidelines.
Registration is required. For more information or to register visit www.rrmc.org/classes-events or call 802-772-2400.
DINNER AND MUSIC TO BENEFIT HAYNES HOUSE
A spaghetti dinner to benefit the Haynes House of Hope will take place on Sunday, Sept. 2 at the Modern Woodmen of America (MWA) Hall in Wells, Vermont. Dinner will be served from 5 to 8 p.m., and music will be provided by Fritz Henry from 6 to 9 p.m.
The Perry girls will be in the kitchen serving up a dinner featuring salad, bread and spaghetti with a choice of meat sauce or meatless, plus dessert. A beverage of soft drinks or water is also included in the meal. Cost to dine in is $15 per person. Take-out is $10 per person and does not include beverage.
Starting at 6 p.m., guests will enjoy the music of musician Fritz Henry. An accomplished singer/guitarist/songwriter, Henry specializes in classics of folk, pop, rock and country-rock from the 1960s and 1970s. He has been seen on PBS, ABC, NBC and CBS, and has opened for notables including Livingston Taylor, the Association and Marilyn McCoo of the Fifth Dimension.
VERMONT ACTORS' REPERATORY THEATRE AUDITIONS
Vermont Actors' Repertory Theatre will hold auditions for its 2018- 2019 season on Thursday, September 6 from 6 p.m. to 8 p.m. and Saturday, September 8 from 10 a.m. to noon at the College of St. Joseph's Tuttle Hall Theatre, 71 Clement Road, Rutland, VT. On these dates we will audition for our second and third shows of the season. The second show of the ART season, "And Then There Were None," by Agatha Christie, will be directed by Susan Gladding-Heitzman. It will be presented at Tuttle Hall Theatre on February 7-10 and February 14-16. The third show of the season, "The Last Night of Ballyhoo," by Alfred Uhry, will be directed by Alex Nicosia. It will be presented at Tuttle Hall Theatre on April 4-7 and April 11-13.For more information, please contact Sandra Gartner at producer@actorsrepvt.org
RUTLAND SOUTH ROTARY CLUB ANNUAL FUNDRAISING RAFFLE
This year's raffle, the proceeds from which go back into the community, will be held Friday, September 7, at Spartan Arena in the Diamond Run Mall. Doors open at 7 p.m. and the drawing will start at 7:30 p.m. Cost is $110 per ticket, which admits two adults 21 and over. Catering is provided by East Creek Catering. Grand prize is $10,000 plus numerous other cash and door prizes. Rutland South Rotary is also asking those attending to bring nonperishable food items for the Rutland Area Community Cupboard.
For more information or to purchase tickets contact John Sanborn, raffle chairman, at 802-345-9873.
AUDUBON WEST RUTLAND MARSH MONITORING WALK
155 species have been recorded at this Important Bird Area (IBA). Join us September 22 for the 3.7 mile loop around the marsh (dirt and paved roads) or go halfway. Kids, new birders and non-members welcome. Learn from our friendly bird experts. Meet at the marsh boardwalk on Marble Street at 8 AM. Contact birding@rutlandcountyaudubon.org


text:
7 Signs Dating Apps Are Taking A Toll On Your Self-Esteem
Eugenio Marongiu/Fotolia
Whether dating apps are causing a "dating apocalypse" or are merely the easiest way to get a date, there's no denying these tools have been total gamechangers in the dating scene within the last few years. And even though dating apps are most popular among millennials, according to a recent Bustle survey with dating app Happn of over 1,000 dating app users, 78 percent of women and 85 percent of men still want to meet people IRL. That's why for the second year in a row, Bustle is deeming April, "App-less April" and encouraging our staff and readers to delete their dating apps for 30 days and meet people the old-fashioned way: offline. With participants tracking their progress and tricks and tips from dating experts, we'll be helping you feel empowered to meet people IRL all month long.
I won't pretend I'm not a huge proponent of using dating apps to find love: until very recently, I was perpetually single and definitely relied on apps like Tinder and OkCupid to meet potential partners. I've spent years swiping, and I'd be lying if I said there weren't times when all those almost-but-not-quite relationships (or flat-out rejections) took an emotional toll on me. In the moment, it's easy to ignore those negative feelings and think the solution is to just keep swiping until you feel better again. Realistically, though, we could all use a break from dating apps from time to time — which is why Bustle's App-less April challenge is so important.
"Online dating gets perceived as competition with the person above, below, left, or right of you," Clarissa Silva, behavioral scientist and author of relationship blog You're Just A Dumbass, tells Bustle. "You're looking for a specific set of qualities that complement you. So is everyone else. At the end, you expect that you will get what you want and so will they. When we receive multiple messages from multiple users, it enhances our self-esteem. However, if the messages are from people you wouldn't normally want to connect with, it impacts your self-esteem negatively."
According to a survey of almost 10,000 millennial college students conducted by LendEDU — an online marketplace for student loan refinancing — 44 percent of those who've used Tinder said they use it as a means of "confidence-boosting procrastination." But even though getting an ego boost might be our intention, that doesn't mean dating apps' impact on our sense of self-worth is always positive. A 2016 study conducted by the University of North Texas found that male Tinder users reported having lower self-esteem, and both male and female users reported having less satisfaction with their bodies and looks. Even though swiping apps like Tinder might seem like harmless fun, it's clear that we're actually super affected by our relative "success" or "failure" on dating apps.
If you feel like your self-esteem has taken a hit because of your dating app use, you're not alone. Here are seven signs that your relationship with your dating apps is affecting your self-esteem — and if you feel like you need to take a break, there's no better time than App-less April!
Even though it can be hard to hear, sometimes the tough love we get from friends and family acts as a mirror that we need to honestly look into. "Let's face it, sometimes family/friends are on target because they are listening to you express dissatisfaction with your choices," Silva says. "What you tell them is what they base their opinion on. They are the first people to notice change in your mood, attitude, or personality. They are mentioning things based on seeing this change."
There's a difference between healthy compromise between two partners, and preemptively altering what you're looking for simply because you're desperate to (finally) make a connection. "I'm talking about defining what you want based on someone else to be more appealing online," Silva says. "Your desires, lifestyle requirements, and dreams are the things that you thought of as the right things to create the lifestyle you wanted as a result of two people. Not just theirs."
We all get some amount of validation from social media activity, especially if that attention is coming from a cutie from Tinder. But if you're looking for a real relationship, these 'micro-validations' are a poor substitute that distract you from the real thing. "[When] liking a photo on Instagram or Facebook is [a] signal that the game is back on... it's probably the saddest and minimal amount of effort to demonstrate interest in someone," Silva says.
The solution? Don't get caught up over-analyzing little things like who liked your photos; instead, focus your energy on people who give you real validation by being supportive and attentive IRL.
Because of how fast-paced dating apps are, it's easy to get super invested in someone, even if you only matched with them six hours prior. Thanks to this accelerated version of dating, rejection seems even more devastating — which naturally takes a toll on us. "Getting rejected through swipes does take a toll on our self-worth," Silva says. "Sometimes that impacts how we see ourselves. Do you think they chose someone that was prettier, sexier, etc. than you? If so, it's time to remember that apps are games of probability. It's not based on who would be ideal... it's based on who says yes/no."
If you've been unsuccessful at finding a partner online, it's totally understandable to get frustrated and feel like giving up. But sometimes, instead of taking a step back and reevaluating what you want, it feels easier just to 'settle' with the next person who shows you attention because you're afraid to never find anything at all. "Fear of constant rejection and not getting what you want sometimes makes us settle," Silva says. "Most of us don't like to admit that we are settling. But when we really look at what we wanted and what we're getting, it might be that we are settling."
We all have coping mechanisms that make us feel better when things — like our love lives — feel out of our control. "This sounds like a no-brainer, but when you are coping with things you don't want to deal with, like rejection or a blow to your self-esteem, you can turn to something to help you cope," Silva says. "You might not be aware that you are bingeing. If it's excessive or other people are telling you you're being excessive, it might be more than usual."
At the height of my dating app addiction in college, I felt like I was constantly on an emotional rollercoaster. One day I was flying high as I chatted with a cute new guy, and the next I was crying in my bedroom because he ghosted me. "Sometimes questioning rejection can lead us to self-doubt," Silva says. "Delete the need to understand. Sometimes we really don't know the reasons why things worked out the way they did. Sometimes people might not be completely honest with themselves and aren't ready to be honest with you or can't be honest with you. The best thing to do is just recognize that the person is not going to reach out or the person doesn't want to be in your life — and that's OK."
If you've begun to feel like you're burnt out by constantly swiping to make a connection, it's not too late to join Bustle's App-less April challenge and give your love life a low-tech makeover. Whether you want to focus on meeting people IRL or do a complete dating detox, deleting your dating apps for a month is a great way to shake up your routine and get out of your dating comfort zone. Who knows — you might just discover that old-school dating is totally your style.
Join the campaign and share your stories with #ApplessApril and by tagging @Bustle.


Description "16 [age] ; Printer ; Arkansas [place of birth]."
Source Includes data from the 1880 Census Population Schedules, Town of Houston, ED 75, Harris County, Texas, Series: T9, Roll: 1308, p. 109 (stamped), entry 554.
Artisan or Artist Henderson, John A.


Lightweight, double jacket construction, combining 100% premium ring spun staple and filament polyester fibers over a thin wall, high tensile, EPDM rubber liner. The outer jacket is mildew resistant and available with double dip "Key-Lok" polyurethane based polymer impregnation for abrasion and moisture resistance.
A proprietary reverse twill weave construction reduces friction loss, while engineered yarn selections lighten the hose up to 25% compared to competitive offerings.
This reliable, double jacket fire hose with Key-Lok treatment is tested to 600 and 800 psi, meets MIL‑H‑24606 latest edition and is UL Listed*.
Features a 10-year warranty and lifetime liner delamination guarantee.
Double jacket construction is tightly woven with filament polyester yarn in the filler and ring spun polyester yarn in the warp of both the inside and outside jackets. Double jackets encapsulate a rubber lining consisting of single-ply extruded tube of synthetic high tensile EPDM compounded that is ozone resistant.
Eco-10 hose may be woven with a double tracer stripe for ease in identification and twist.
Available with a special "Key-Lok" polyurethane based polymer impregnation for enhanced color and added abrasion resistance. A double dip process for twice the abrasion resistance is available upon request.
Eco-10 can be coupled with 6061-T6 extruded aluminum threaded couplings or forged Storz. Brass, special threads or other custom features available upon request. Barcode recess available at additional charge.
The minimum burst test pressure when tested in accordance to NFPA 1961 on all Eco-10 hose up to 3" diameter shall be 1200 psi / 82 bar. Maximum burst test requirements for 4" and 5" diameters shall be 900 psi / 62 bar. Service test pressures stenciled on the hose shall be in accordance with current minimum requirements of NFPA 1962.
Eco-10 hose meets and exceeds all performance requirements of NFPA 1961 and Underwriters Laboratories latest edition standards.
Eco-10 hose has a potential service life and warranty of 10 years with a lifetime warranty against liner delamination, barring mistreatment that would render it unfit for service. Upon delivery, the hose shall be free from defects in materials and workmanship.


text:
using System.Collections.Generic;

namespace GDConsumer.Entities
{
    public class Route
    {
        public Bounds bounds { get; set; }
        public string copyrights { get; set; }
        public List<Leg> legs { get; set; }
        public OverviewPolyline overview_polyline { get; set; }
        public string summary { get; set; }
        public List<object> warnings { get; set; }
        public List<object> waypoint_order { get; set; }
    }
}


Richarlison came closest of all the other side of the interval, with his close-range effort cleared off the line by Nathan Ake. Aymeric Laporte released Leroy Sane down the left flank, who in turn put a cross on a plate for Jesus to tap in. L Lost 1 - 2 against Burnley on January 12th 2019. Certain photos copyright © 2019 Getty Images. Here are Saturday's full results: West Ham 1-0 Arsenal Brighton 0-1 Liverpool Burnley 2-1 Fulham Cardiff 0-0 Huddersfield Crystal Palace 1-2 Watford Leicester 1-2 Southampton Chelsea 2-1 Newcastle Premier League Standings Team, Played, Goal Difference, Points 1 Liverpool 22, +40, 57 2 Manchester City 21, +39, 50 3 Tottenham 21, +25, 48 4 Chelsea 22, +23, 47 5 Arsenal 22, +14, 41 6 Manchester United 21, +11, 38 7 Watford 22, 0, 32 8 Leicester 22, +1, 31 9 West Ham 22, -2, 31 10 Wolverhampton Wanderers 21, -2, 29 11 Everton 21, 0, 27 12 Bournemouth 21, -9, 27 13 Brighton 22, -6, 26 14 Crystal Palace 22, -8, 22 15 Burnley 22, -20, 21 16 Southampton 22, -16, 19 17 Cardiff 22, -22, 19 18 Newcastle United 22, -15, 18 19 Fulham 22, -29, 14 20 Huddersfield 22, -24, 11 A converted penalty from Mohamed Salah early in the second half was enough for the Reds, who didn't play up to their usual standards but kept a clean sheet for the win. D Drew 1 - 1 against Newcastle United on December 29th 2018. W Won 2 - 1 against Fulham on January 12th 2019.
The Hammers easily handled the visitors, who played drab and uninspired football and barely mustered any chances. And the Hertfordshire side went ahead when Tom Cleverley smashed in a beauty. After Rashford opened the scoring for the Red Devils, the home side laid siege to the United goal. Mohamed Salah made the difference as under-par Liverpool edged out Brighton to go seven points clear at the top of the Premier League. Following the completion of the double league round, top 4 four teams will play the Play-off matches. Share with your friends with statistics, click the icon to share a table image on facebook, twitter or send an email to a friend.
Weekend Review Having suffered back-to-back losses to start 2019, Liverpool battled to a 1-0 win at Brighton to get back on track in the Premier League. The first match of the day is scheduled to start at 2. L Lost 0 - 1 against Leicester City on January 1st 2019. D Drew 1 - 1 against Arsenal on December 26th 2018. We also provide corners table Premier League including executed corners halfway between 37-45 minutes, 80-90 minutes, and the race of corners. D Drew 0 - 0 against Cardiff City on December 26th 2018.
The Saints lost Yann Valery to a second booking after being put 1-0 up by a James Ward-Prowse penalty, but they went on to score again through Shane Long shortly after and held on for the win. Leicester City: 22, +1, 31 9. W Won 1 - 0 against Everton on January 1st 2019. L Lost 1 - 2 against Leicester City on December 26th 2018. Wolverhampton Wanderers: 22, -5, 29 12. They replaced , and who were relegated to the. Tottenham Hotspur: 22, +24, 48 4.
Brazil 9 0 England 9 0 England 9 1 9. Matteo Guendouzi found the side-netting at the other end shortly after, before Rice headed wide for the hosts just before half time. D Drew 0 - 0 against Crystal Palace on December 26th 2018. W Won 1 - 0 against Everton on December 29th 2018. England 4 0 England 4 0 England 4 0 Ireland 4 0 Denmark 4 0 Germany 4 0 Mexico 4 0 Argentina 4 0 England 4 1 Armenia 4 0 Scotland 4 0 54.
But the visitors were level when Cathcart redeemed himself with a close-range header. D Drew 1 - 1 against Fulham on December 26th 2018. W Won 1 - 0 against Tottenham Hotspur on January 13th 2019. D Drew 0 - 0 against Chelsea on January 2nd 2019. The reinvigorated Frenchman was bothering his World Cup-winning team-mate Hugo Lloris after the break, too, with head and with lob. The season started on 10 August 2018 and is scheduled to finish on 12 May 2019.
D Drew 0 - 0 against Cardiff City on January 12th 2019. I cannot always see the matches live. In the Table Match tab, you check the tables of teams by: fouls, burnt, shots of possession. Next time you want to find out the score, just ask us! Crystal Palace Manchester United vs. W Won 3 - 1 against Huddersfield Town on December 26th 2018. During this season owner was killed in a outside the on 27 October 2018, shortly after a 1—1 home draw against. The Eliminator match will be played between position number 3 three and 4 four.
This year, Sylhet Super Stars franchise was excluded from the tournament. L Lost 0 - 3 against Manchester City on January 14th 2019. L Lost 1 - 4 against Manchester United on December 30th 2018. Manchester United's English striker Marcus Rashford C shoots past Tottenham Hotspur's French goalkeeper Hugo Lloris L to score the opening goal of the English Premier League football match between Tottenham Hotspur and Manchester United at Wembley Stadium in London, on January 13, 2019. Cathcart made amends himself on 67 minutes before Tom Cleverley scored the winner seven minutes later. Wilfred Ndidi scored Leicester's goal in the 58th minute.
Burnley: 22, -20, 21 16. Wes Morgan was denied an equalizer shortly before the break when his stretching effort was cleared off the line. Pedro dinked the hosts into a ninth-minute lead with a gorgeous finish. Our offices are for administrative purposes only, no visitors will be accepted without an appointment. Arsenal: 22, +14, 41 6. Manchester City: 22, +42, 53 3.
D Drew 1 - 1 against Watford on December 29th 2018. Austria 7 1 England 7 3 France 7 0 Spain 7 0 France 7 2 England 7 0 Germany 7 0 England 7 3 26. Are they on the same team? L Lost 1 - 2 against Southampton on January 12th 2019. Arsenal suffered a shock loss against West Ham United, and Chelsea narrowly beat Newcastle United. Archived from on 9 May 2018. We are not limited only to the above data.


1. Get to know the Walabot and a setup. This includes data readout and send it to an Arduino.
I've made a Windows WPF application to easily configure, setup and read data of the Walabot. Also for testing purpose I connected an Arduino through a serial connection. In this way I can control the Arduino's GPIO with the input from the Walabot. This data is send with the WPF application..
// targets  = the array with the found targets.
// .zPosCM    = the Z position of the target.
If you place this in a loop for each found target, all the data can be found. Always make sure that you specify the TargetIdx in the right configuration, so no null references will be made.
// which easily can be used to send the data and use it inside the application.
This data will be send to the Arduino by a serial connection. Simply register the COM port of the Arduino and send serial data to it. Multiple tutorials are available online to setup this connection.
I setup a predefined string to split to send only one data package to the Arduino. The Arduino will split this data and execute the right function.
Since I found the Walabot Filters and Profiles a little difficult, I made a summary below. This was found from the walabot api pages. Links are found below.
The Arduino will be used to receive the imput of the Walabot and use this data as input for the Neopixels. I use the Arduino (Genuino) MKR1000, but every board can be used in this scenario.
// switch between commands using the char.
Here is the first Windows application. Don't botter the layout/UI, will change that in later phases.
Colored buttons have the function to light up the RGB LEDs in a specific color.
The result of the first phase is quiet successful; objects can be detected and for the first object detected the LEDs will show it's distance. But a lot of additional functionality and calibration has to be done.
As the progress of the application follows, I implemented a few test and debug functions to test the Walabot. Those functions include getting energy data or x-pos, y-pos and z-pos values and calibrating the walabot with the theta-, phi- and area values.
Area: depending on object height. add object_height + 10 for the maximum and object_height - 10 for the minimum. Resolution: 0.1.
My plan is to create a sweep of measurements whereby in each measurement the phi angle is increased. This is to determine in different angles if there is an object. In this way I can determine the width of measured target. The theta angle will be 1, so a small strip of data will be measured.
The object has to stand still for about 2 minutes (each measurements needs to be calibrated again so this will take some time).
// update the measurement configuration to include the updated values.
This is quite a tricky methode to determine objects, since in each measurement the X, Y and Z are slightly different. But for roughly measurements a start and finish of an object can be detected.
If the first (start of detecting object) and end (last measurement where the object was detected) are known. The width can be calculated. With distance (z-position) is also known.
// saving the distance of the detected object_a.
For the example: if the object starts at -10 and ends at 18 at a distance of 50cm, the angle is 28 degree. tan(28 *(pi/180) ) * 50 = 26,6cm.
Based on those values a measurement can be connected to a predefined object. In this way the Walabot can detect objects :) Yeah!
1. Connect to the Walabot and return the software version.
Since I have to hold the object by hand I implemented a 3 second delay.
This will go through all the phi-angles and save on which angle a object is detected within a specific height-range.
I can just hold the objects with my hand above the sensor. This didn't influence the results for now. But I have to say that it would be easier to mount the object to a standard or tripot.
With having the starting point and ending point angles and with the known height of the object the width of the object can be calculated.
// calculate the width with the height and angles.
The WPF application project is available in the resources below.
In the video below I demonstrated the Arduino integration. In this demo the distance calculated by the Walabot is send through serial to the Arduino. Depending on the height the LEDs will shown a different/brighter color.
I connected the infinity mirror which I made during my NXP FRDM-K82F project [link]. This mirror includes 125 neopixels.
The Arduino .ino projectfile is available in the resources below.
There are some things I want to improve or add to this project, but they cost a bit more time and knowledge.
Apply asynchronous functionality to the windows application. So data can be shown in the application without it hangs on loading.
Apply my initial idea to convert the measurement-data in a bitmap image. I tried it, but couldn't handle the image/bitmap functionality. I have to learn some more advanced C# code for that.
Calibrating the Walabot faster. This would significantly decrease the waiting time for each measurement.
Add the same measurements in the other axis (theta angle) to create a 2d image of the object.
This project confirms that the Walabot is an ideal tool for detecting targets. A lot of configurations can be made. I see a lot of possibilities in it and I look forward to implement the Walabot in my next project.
I have to say that this project is far from perfect, but I'm happy with the end result! Object can be detected and the Walabot can handle a lot data. Connecting an Arduino to a Windows Applications was new for me and learned a lot by making it.
The Walabot team - for the support here at Hackster, through DM and through the Slack app.
Hackster.io - for being an amazing community that makes projects as this one happen.


I have a haiku up on Stardust Haiku in the July issue. Scroll down to page 5.
Two tiny haibun (also known as "gembun") were published on The Other Bunny.
One haiku of mine was published in Mayfly, Summer 2018, Issue #65.
One haiku has been published in Stardust Haiku, July 2018, Issue 19.


text:
Q: Filename contains an umlaut (ä, ö, ü) and, therefore, the filename seems to be different When I load "Österreich" from the Database, it does not match my filename "Österreich". That is the problem.
I have a file called "Österreich.php" which I want to read from the respective directory. When I use strlen() on the "Österreich" (not ".php"), it returns 12, however, it should be 10. This causes problems as I want to load data from the database with it and it, for whatever reason, seems to be a "different" word.
Any ideas?

A: The hint is that the Ö should ideally be a two-byte UTF8 sequence and the byte length of the string would be 11, not 12.
The only way that I can think of that Österreich occupies 12 bytes is if it's in a non-ideal-but-still-valid-form of a regular O plus a separate umlaut combining mark. Eg: O\u{0308}sterreich
function utf8_denormalize($string) {
    return implode('',
        array_map(
            function($c){
                if(strlen($c) > 1){
                    return Normalizer::getRawDecomposition($c);
                }
                return $c;
            },
            preg_split('//u', $string)
        )
    );
}

$str1 = "Österreich";
$str2 = "O\u{0308}sterreich";
$str3 = Normalizer::normalize($str2);
$str4 = utf8_denormalize($str1);

var_dump(
    $str1,
    $str2,
    $str3,
    $str4,
    $str1 === $str3,
    $str2 === $str4
);

Output:
string(11) "Österreich"
string(12) "Österreich"
string(11) "Österreich"
string(12) "Österreich"
bool(true)
bool(true)

I would say that the data on both sides of this issue should be inspected and/or normalized, but you should also be careful as you may have "duplicate" filenames in your database and/or filesystem comprised of the normalized and un-normalized forms of various strings.
https://www.php.net/manual/en/normalizer.normalize.php
Edit
Mac HFS is dumb and requires the de-normalized form for filenames. I've cobbled together a de-normalizer, [YMMV] but honestly unless your production environment is a Mac machine you should be testing your code against a VM that matches your production environment as closely as possible. Filesystem peculiarities are just one of many edge cases that will throw wrenches into the works.


Game Day Food and Wrongful Cheering?
I jut learned that Alton Brown of the Food Network has a YouTube Channel! Why would I get excited about this you ask? Because he is awesome! He has posted a video of Game Day Foods and with the season of the covered Pig Skin upon us I thought I would pass on my new found YouTube Channel to you!
I have to be honest,I am not one of those football moms that understands the game. In fact I only know to cheer if my son catches the ball, our team makes a touchdown, or takes down the opposing team ball carrier. If I was going to be completely honest, I mostly follow the lead when the our team cheers and I cheer right along! I may not understand what just happened but if the other moms are hollering, I holler too! (Unlike baseball- I GET BASEBALL!) Now, you may be thinking that I am a newbie to the game. NOT THE CASE! I wish I could use that as an excuse. I even have the book Football For Dummies ;( What is beneath a dummy because I would fall into that with the game of football.
HOWEVER, I can cook. SO~~ I may cheer at the wrong times and when the other team runs a very long distance I do want to cheer for their accomplishment. You know, give credit where credit is due. I may possibly get dirty looks for this~~ I don't care. I know that when I make a great dinner, or a great after the game snack, I win. My football follies are forgotten! Alton Brown just helped a little more with this. My football playbook has game day recipes in it!
My son has come a long way since his early days of playing football. Here is a picture from 7th grade.
A game day picture from last weeks game. He is the one on the end closest to us and ready for a play! He may be a Receiver or possibly a Corner? Not sure what is going on here! What matters is I cheered and cooked after the game. It is how I roll.
Thanks for reading and "liking" my screenplay. It's an adaptation of my novel, In The Forest Of The Night," which is available at Amazn.
Just this post will make me want to follow you. I'm laughing so hard!


text:
Smear campaign against Army: 178 social media accounts linked to PTI
Social media activists and their handlers have been tracked down after an investigation
By Raees Ansari
Image collage showing the six Pakistan Army personnel who embraced martyrdom during a helicopter crash in Balochistan. — ISPR
LAHORE: An inquiry report on negative propaganda against the army on social media after the Lasbela helicopter crash has found links of 178 accounts to the Pakistan Tehreek-i-Insaf.
According to sources, social media activists and their handlers have been tracked down after an investigation. Over 2,350 posts were made through 580 accounts and 18 Indian accounts were also included in the campaign. Sources said that cases would be lodged against the accused under the relevant laws.
UAE president, Saudi CGS condole Lasbela tragedy with Gen Bajwa
Lasbela copter crash: ISI, IB in JIT to probe smear campaign
A smear campaign had started against the Pakistan Army after an Army Aviation helicopter went missing in Lasbela during a relief operation in flooded areas. On the other hand, several social media activists of the PTI have apologised for their action.
Hashim Syed commented 5 months ago
"Jo Jesa Hai Usko Wesa Kyun Na Bawan Kiya Jaye" - Manto. Negative smear campaign seriously? People are just describing the things, that they are observing.
Reply 5 4
Salam Ullah Khan commented 5 months ago
I was listening to an Indian Vlog where a man was saying that the thing and propaganda India was doing while spending millions is now done freely by Pakistan Tehreek-i-Insaf and Imran Khan. A foreign agent and Fitna should be punished and sentenced to death as he has violated the constitution.
Azhar Hussain commented 5 months ago
Out of 580 accounts, 178 were PTI supporters and what about the rest of the guys? Can our world class agencies also identify them as well or this is all they need. Pakistani public had enough of your lies that want us to digest.
ASI martyred,: SHO escapes unhurt in Karachi firing
KARACHI: An assistant sub-inspector was martyred and a station house officer remained unhurt in a firing incident in...
Israel punishes attacker's family as violence rages
JERUSALEM: Israeli forces on Sunday prepared for the demolition of the east Jerusalem family home of a Palestinian man...
Steps taken to safeguard rights highlighted
ISLAMABAD: Pakistan has taken a range of legislative, policy and institutional steps to advance the human rights...
In a first, women drive high-speed train in Saudi Arabia
JEDDAH: Driver Tharaa Ali takes her seat at the helm of a high-speed train ferrying pilgrims to Makkah, a beneficiary...
'Ideology of hate' consuming India: Gandhi's great-grandson
MUMBAI: India's rising tide of Hindu nationalism is an affront to the legacy of Mahatma Gandhi, his great-grandson...
Quake jolts Islamabad, parts of country
ISLAMABAD: An earthquake of 6.3 magnitude jolted Islamabad and other parts of the country on Sunday afternoon.Talking...


text:
Albany & Troy: (518) 463-0134
Schenectady: (518) 374-5319
George J. Bourgeois Sr.
George J. Bourgeois formerly of Halfmoon, NY died December 18, 2020. Born in Waterford he was the son of the late George F. and Anna V. Gregoire Bourgeois. With his father George operated a school bus service in Waterford and Clifton Park. He... View Obituary & Service Information
The family of George J. Bourgeois Sr. created this Life Tributes page to make it easy to share your memories.
George J. Bourgeois formerly of Halfmoon, NY died December 18,...
Send flowers to the Bourgeois' family.
© 2021 Albany Diocesan Cemeteries. All Rights Reserved.


text:
Q: How to fix the reference line in react lightweight charts? How to fix the reference line in react lightweight charts?

  useEffect(() => {
  if(chart && data) {
    const candleSeries = chart.addCandlestickSeries({
      upColor: COLORS.green,
      downColor: COLORS.red,
      borderDownColor: COLORS.red,
      borderUpColor: COLORS.green,
      wickDownColor: COLORS.red,
      wickUpColor: COLORS.green,
    });

    candleSeries.setData(data || []);

  }
  }, [chart, data])

whenever there is a change in data the chart is getting updated, but the reference line it repeating as shown above. How can I prevent this?


text:
COVID-19 Case Tracker
We're Open Kansas City
Quick links... Coronavirus Home COVID-19 Case Tracker We're Open Kansas City
Don Chilito's openly defies mask mandate in Johnson County
At least one Johnson County business owner won't enforce masks in his restaurant.
By: Emma James
MISSION, Kan. — Since the mask mandate went into effect in Johnson County, the district attorney's office has made 18 site visits to businesses for non-compliance complaints.
District Attorney Steve Howe said of those 18 businesses, all but one have complied.
Don Chilito's Mexican restaurant in Mission, which is a family-owned business by Barry Cowden, has not followed the mandate.
Cowden said he believes the mandate is an encroachment on civil liberties.
"It's supposed to be a free country, and we can make our own decisions with what we do in our lives and in our businesses," Cowden said.
Cowden said despite scientific evidence that shows masks help reduce the transmission of COVID-19, he won't require his employees or customers wear them.
"I don't believe it," Cowden said. "I don't think that there is any science that proves that."
Cowden said he has taken other steps to keep his workers and customers safe such as increasing sanitizing efforts and spacing out tables.
The district attorney's office sent an investigator out to the restaurant in June after receiving several complaints.
"He presented me with a five-page order from Governor Kelly, and I gave him my response, which is exactly what I'm giving you... I feel it's an encroachment and a violation of my civil liberties and rights," Cowden said.
Cowden said he asked what the consequences would be and said he was told there were none at the time. Since then, he said he hasn't received word from the DA's office about any consequences or action moving forward.
Howe said it's unclear what enforcement should look like for the mandate because there's no legal precedent to guide him.
"When the legislature passed that law, basically saying prosecutors had to, if they found a violation, examine whether or not to file civil action, I've been having my lawyers look at what type of civil action can we actually bring under what provisions," Howe said.
Howe said he prefers the enforcement to be education and information, which has worked for every other business except Don Chilito's.
The district attorney said there may be new information about enforcement coming out of Thursday's Board of County Commissioners meeting.
"Then we'll have a better idea of whether that's fines or can the county health director also have within their authority to close the business, but I don't think that's really the strategy people want to use," Howe said.
Since Cowden doesn't know what type of enforcement is headed his way, he isn't sure how he'll respond. He's considering closing his restaurant doors rather than follow the mandate, but he also said he may take a different route.
"I care about my employees, so if that's what we have to do I suppose we'll do that. If I do wear a mask I will of course wear it in protest, and I'll only do it where need be to protect my livelihood and that of my employees," Cowden said.


text:
Q: Running Oozie actions in parallel I am using the workflow editor in Hue to develop an Oozie workflow. There are a few action that should be executed in parallel.
Is it possible to execute two or more actions concurrently?
How can I set it up in Hue?

A: Yes, it is possible. Among various Oozie workflow nodes, there are two control nodes fork and join:

A fork node splits one path of execution into multiple concurrent paths of execution.
A join node waits until every concurrent execution path of a previous fork node arrives to it.
The fork and join nodes must be used in pairs. The join node assumes concurrent execution paths are children of the same fork node.

Hue does support it, although it's not very intuitive - you can drag and drop actions on the workflow, but you cannot do the same for the control nodes.
To split one path of execution into two concurrent ones, drag one action onto another (e.g. step_B onto step_A in the example below):

This will add a fork node automatically and place the appropriate action underneath:


CEDAR CITY – A 16-year-old male driver and an adult male passenger were both airlifted to Salt Lake City Tuesday after a semitractor-trailer ran over their vehicle.
The semi was driving south on state Route 130 toward an Interstate-15 exit when the driver of the a BMW sped up to make a left-hand turn from 1600 North Access Road on to SR 130, Cedar City Police Sgt. Jerry Womack said.
The vehicle turned in front of the semi, which was unable to stop in time to avoid the crash. The cab of the semi ran over the vehicle, Womack said.
Officers were dispatched to the scene around 6:30 p.m. where they found the BMW on fire and its occupants trapped inside. Police safely pulled the passenger out after suppressing the flames. However, Cedar City firefighters had to extricate the driver by cutting his door off of the small-passenger vehicle.
Both males were severely injured and transported to Cedar City Hospital where two Life Flight helicopters were waiting to fly them to Salt Lake City. The driver and passenger were also confirmed to be locals to the area. The semi driver was not injured in the incident.
The identities of those involved in the incident is not being released at this time.
Womack did not have additional information on the extent of their injuries or their status Tuesday night.
No citations have been issued, Womack said.
The Iron County Sheriff's Office, Enoch Police, Cedar City Police and Fire, Utah Highway Patrol and Gold Cross all assisted on scene.
16 year old driving a BMW like a fool. Hope they make it.
Doesn,t matter what you are driving, 16 yr olds know you don,t cut in front of a semi…it will be a long time before he drives again,if he does, hope they both survive.
I'm sure most people have tried to "save time" by cutting it a little too close in a similar situation with traffic, left hand turns, yellow lights etc. It's NEVER a good idea to try to beat any other vehicle. You will end up paying for it, like these two are now. I do hope they make it and recover. We don't live in a video game, these are dangerous machines that we operate and have real life consequences when WE screw it up. My regards to the truck driver for doing what she could, it's an often overlooked job on how much skill and concentration it really takes to operate one and to always do it safely. It's like trying to stop a train, and we know it takes much more than a dime to stop them as well.
there's probably some valuable lessons to be learned from this. I was not a good driver at 16. Teen drivers are idiots. What can ya do?


text:
Sanaga – rzeka w Kamerunie powstała z połączenia dwóch innych - Djérem i Lom. Ma około 890 km długości. Uchodzi do Atlantyku.

Rzeki w Kamerunie
Zlewisko Zatoki Gwinejskiej


Around three thousand individuals took to the streets of Columbia on Jan. 21, 2017, to protest policies of newly inaugurated U.S. President Donald Trump, according to estimates by event organizers. Women's reproductive rights, climate change and xenophobia were some of the many topics of signs that decorated the landscape. Chants of, "love trumps hate," and more rang through the downtown streets.
Many of the marchers came from surrounding areas.
"I came to march on this lovely blue island in a sea of red," said Jean Strolberg of surrounding conservative areas in the state.


text:
The Cornell Daily Sun (https://cornellsun.com/2010/02/03/water-adhesive-technology-offers-potential-superhero-abilities/)
Water Adhesive Technology Offers Potential Superhero Abilities
By The Cornell Daily Sun | February 3, 2010
Cornell researchers have created a technology that one day could allow humans to walk on walls –– without any radioactive spider bites. The palm-sized device uses the combined surface tension of a series of minute water droplets to create a strong adhesive force. Funded by the Defense Advanced Research Projects Agency and the National Science Foundation, the device may one day be used as more than just a recreational accessory. It could allow soldiers to scale walls with ease and give them a tactical advantage.
The key to the invention lies in the controllability of its rapid adhesion, which allows the device not only to stick to surfaces, but to unstick just as easily. Unlike previous attempts at gecko-like adhesion mechanisms, the device can cling to almost any surface, regardless of its coarseness.
"This is a little device that can grab and release walls and objects," Prof. Paul Steen, chemical and biomolecular engineering, said.
Steen, who pioneered the project with his former post-doctorate student Michael Vogel, was inspired by the Florida leaf beetle's ability to adhere to surfaces and withstand force up to 100 times its own weight. He learned about the beetle in an afternoon talk at Statler Hall.
After five years of research and development, Steen and Vogel have a tangible result that replicates the leaf beetle's extraordinary adhesive force.
The device uses a metal plate with a grid of tiny holes, micrometers in diameter. Beneath the plate lies a liquid reservoir, from which water is pumped by an electric field created with a standard 9-volt battery.
The surface tension from these exposed droplets causes the plate to stick to other surfaces, like how a glass of ice water condenses and suctions to a table when lifted. When the electric current is reversed, the water droplets are sucked in from the plate and the adhesion between the surfaces releases.
"The device pushes out small droplets of water and these droplets attach to whatever substrate you're trying to attach to," Vogel explained.
The smaller the holes, the more droplets and the greater the adhesive force. According to Vogel, a one-square-inch plate covered in millions of 1-micron sized holes could support up to 15 pounds.
The device could be adapted to other liquids with different properties, like oil, with varied effects that have yet been explored, Steen explained.
Yet, both researchers have their eyes set on the new invention's vast potential.
"The real question is, how strong can we make the device?" Vogel stated.
If the scientists were able to create a 3-by-5 inch plate and fit it to a shoe sole, for example, it could support up to 225 pounds.
The concept and its applications already have science blogs buzzing.
"Once the researchers master the pump mechanism to make adhesive forces even stronger, they want to turn humans into Spider-Man," Katie Drummond wrote on wired.com.
While a Spider-Man type device is one of the gadget's "wilder" applications, the invention's enormous surface tension has potential uses as a small-scale explosive device with significant power, Vogel stated.
"You can think about making a credit card-sized device that you can put in a rock fissure or a door, and break it open with very little voltage," Steen told the University. "It's a fun thing to think about."
Original Author: Dani Neuharth-Keusch
Women's Hockey Battles For No. 2 ECAC Standing
By The Cornell Daily Sun February 4, 2010
The regular season for women's ice hockey is drawing to a close, with only six games remaining, and the Red is striving to earn a No. 2 spot in the ECAC.
The Giving Tree Café
Vegetarians rejoice! After closing its doors last summer, long-time Collegetown favorite ABC Café has reopened under new management in the old storefront on Stewart Avenue with a new name: the Giving Tree Café.


text:
var http = require("http");
var parse = require("url").parse;
var join = require("path").join;
var fs = require("fs");

var root = __dirname;
//console.log(root);//这个是本地的路径比如 D:\myhomepage\singlePageProject\myFirstProject\RichardLiK.github.io\public

function sendFile(res, req){
	var url = parse(req.url);
	var path = join(root, url.pathname);
	// console.log('url:' + req.url);
	// console.log('pathname:' + url.pathname);
	if (url.pathname=='/') {
		// statement
		path = path + 'public/index.html';
		// console.log(path);
	}
	fs.stat(path,function (err,stat) {
		/* body... */
		if (err) {
			// statement
			if ('ENOENT' == err.code) {
				// statement
				res.statusCode=404;
				res.end('Not Found');
			} else {
				// statement
				res.statusCode=500;
				res.end('Internal Server Error');
			}
		} else {
			// statement
			res.setHeader('Content-Length',stat.size);
			var stream = fs.createReadStream(path);
			//这部分stream只能搞一个路径,读完后就关了。。。。不能调用其它文件的函数,不然会报错,需要加一个url的判断p21
			// stream.on('data',function(chunk){
			// 	res.write(chunk);
			// });
			// stream.on('end',function () {
			// 	res.end();
			// });
			stream.pipe(res);
			stream.on('error',function (err) {
			/* body... */
			res.statusCode = 500;
			res.end('Internal Server Error');
		});
		}

	});
}

function routeDoWith(req, res){

}

var server = http.createServer(function(req, res){
	//var filename;
	sendFile(res, req);

	// req.on('data',function(chunk){
	// 	filename = chunk + ".html"
	// });
	//res.end(filename);

});
server.listen(3030,function(){
	console.log('server is running on http://127.0.0.1:3030');
})


Although workers are a business's most valuable assets, they also present the greatest challenges for employers. Subject to a complex array of regulatory restrictions and heightened government scrutiny, businesses must comply with federal and state labor and employment laws, assuring workplace safety and a harassment-free environment. Employers must properly classify employees, address social media use, establish and enforce workplace policies, manage employee relations, compensation and disabilities issues, proactively avoid risk and still find time to be profitable.
Faced with all of these challenges, businesses and their managers turn to Segal McCambridge for day-to-day employee management advice, regulatory guidance and dispute resolution services.
Our lawyers frequently represent clients before regulatory bodies, including the U.S. Department of Labor, the EEOC, the NLRB, U.S. Citizenship and Immigration Services (USCIS), U.S. Immigration and Customs Enforcement , U.S. Department of Homeland Security and OSHA. We conduct internal audits and represent clients in government investigations and enforcement actions.
From single plaintiff to multidistrict, multiparty cases, and class actions, we have an impressive record of success litigating employment and labor-related disputes in federal and state courts at all levels throughout the United States, and are also highly skilled at resolving disputes through alternative methods, including arbitration, mediation, and negotiated settlement. Whether in court or at the negotiating table, we have the ability, knowledge, and experience to protect our clients at every stage of a dispute.
Segal McCambridge employment attorneys help clients devise, implement and enforce policies, procedures and best practices to assure regulatory compliance, minimize liability exposure and promote employee satisfaction. We are particularly adept at advising highly regulated businesses such as those in the transportation, healthcare, pharmaceutical, and medical device industries. As a value-added, we offer our clients' managers and employees training programs on a variety of employment law issues impacting their operations and advice on emerging trends and risk mitigation.
We work proactively with clients to reduce the likelihood of litigation, whenever possible. At the same time, we are well prepared to litigate when going to court is in our clients' best interests.


text:
"Shang-Chi" With An Asian Lead, Sets A N/America Box Office Record
The North American box office got a big boost as Disney's new "Shang-Chi and the Legend of the Ten Rings," featuring Marvel's first leading Asian superhero, scored an unexpectedly strong $75.4 million opening, industry observer Exhibitor Relations said Tuesday. That figure, for the Friday-through-Sunday period, was a Labor Day weekend record, the Hollywood Reporter said,…
Marvel Eyes China With 'Shang-Chi And The Legend Of The Ten Rings'
In Hollywood's latest attempt to score in the huge, but highly restrictive, Chinese market, an Asian actor has been cast as a leading Marvel superhero for the first time. "Shang-Chi and the Legend of the Ten Rings," out on Friday, takes the 25th installment in the wildly popular Marvel film series into mythical China, where…
Watch: Marvel Introduces First Asian Superhero "Shang-Chi" In New Trailer
Marvel has released the trailer of its upcoming superhero film, "Shang-Chi and the Legend of the Ten Rings" - Marvel's first film with an Asian lead. The trailer introduces the lead character Shang-Chi, who's known in the comics as Marvel's preeminent master of martial arts. "Shang-Chi and the Legend of the Ten Rings" follows Shang-Li,…


We provide free of cost guest Pehuajo chat rooms where you do not have to register or login or go through the boring email verification process. Our Pehuajo chat rooms are all the time packed with a large number of awesome online chatters of all ages and genders in search of a like minded conversation buddy to have a decent and funny chat conversation. No registration is needed to use our cool Pehuajo chat rooms. All you have to do is to hit the start chatting button. You may find someone from your locality you never knew. Crowded Pehuajo chat rooms are one among the most engaging places to meet like minded online chatters.
Our chat rooms don't cost a penny, moderated & updated where you can securely talk to online chatters from all over Pehuajo and talk about what you find amusing, get to meet like minded friendly users, make boyfriend/girlfriend. Who would not be interested to make new friends? Quite decent number of visitors land in our crowded Pehuajo chat rooms looking for a lively conversation. Are you looking to make friends from Pehuajo? Have you been looking for a fun chat room where you dont have to create an account or register. Pehuajo chat rooms are one among the most crowded chat rooms on web.
You will never feel bored next time onwards when you have to be alone because we wont ever let you feel alone once you join our interesting Pehuajo chat rooms where you get to meet like minded men and women who are looking for a cool chat friend like you. Pehuajo chat rooms are amazing not only due to the reason that its crowded up with like minded social people but also because they are provided a flexible social platform to express their opinions, meet new strangers, organise fun group conversations, make decent friends and find partners for dating. Clicking the 'Start Chatting' button gives you immediate access to our free and fun ever growing online community of Pehuajo users who meet together every day in our well moderated Pehuajo chat rooms. The best thing about our Pehuajo chat rooms is that you do not have to register for an account by verifying your email. The unique Pehuajo chat rooms at do not require you to register. Just clicking a button allows you to to participate in the chat and engage in conversation with local users from Pehuajo.
We allow visitors like you to get past their boring lives by allowing them meet open minded online chatters from different cities of Pehuajo in our well organized Pehuajo chat rooms.
Its not hard to find friends or meet new people in our Pehuajo chat rooms as there are hundreds of awesome and open minded online chatters managed together for the same purpose.
Whether you are simply in search of an interesting chat conversation or trying to find a partner to date, our Pehuajo chat rooms definitely will come in use.
You can organise discussions about interesting topics, meet new peopl or find a love partner in our chat rooms. You just have to type a nickname and press the join chat button to start chatting. Registration pages, making account and bla bla are the boring steps which you never have to complete. Who on earth would register for any online chat room site when you can enjoy guest chatting service in our Pehuajo chat rooms that allows you to have fun without signing up. Pehuajo chat rooms are the best friends of isolation. If you are bored, looking for a friend or simply some decent conversation, our Pehuajo chat rooms are the perfect choice for you. A lot of chat lovers from Pehuajo with a common motive of making friends and meeting strangers come to yesichat.
Have fun in our Pehuajo chat rooms where hundreds of interesting chatters are looking for an amazing chat partner like you! You do not have to register for our services. Simply entering a nickname allows you to use Pehuajo chat rooms without sign up. Pehuajo chat rooms are where you should be right now because you are looking for an interesting chat partner or a spicy virtual relationship. We group hundreds of online people from Pehuajo in a group chat room environment and allow them talk to one another about various topics. Online Chatting is very fun and when you have surprises that you are unaware of, its even more amazing. Our interesting and simple to use Pehuajo chat rooms attract a large number of internet users from various states of Pehuajo. Everyone is in search of a open minded partner to share some laughter in a cool conversation.
You will for sure be addicted to our engaging Pehuajo chat rooms where you can speak freely about any topic you find interesting, meet open minded men and women and find dating partner. At yesichat, you need not login or register or verify your email in order to join our Pehuajo chat rooms. Meeting strangers, making friends and chatting freely about different topics was never this convenient before we created our Pehuajo chat rooms.


23% of U.K. broadband households have an electronic home security system. Less than 20% have one in France and Belgium, while only 6% of German households have a system.
By 2020, the U.K. and Spain will have over 20 million smart meters. France and Germany will exceed 30 million.
One-third of German broadband households prefer a home security company to provide connected home monitoring equipment and services. Utilities are the second-most preferred provider but do not score more than 20% of households among any European country.
Home automation is a growing trend worldwide, but it raises many questions: is it a new way to generate revenue? Will it further engage customers? Is it the next step in product development? Get answers as this panel takes a close look at the latest deployments in the U.S., where home security leads the charge, and in Europe, where the focus is on controls and energy.
Cable Congress is recognized as the leading event dedicated to the cable and media industries in Europe. In 2012, the congress attracted over 850 senior-ranking delegates from over 35 countries representing the cable, content, technology, and new media industries.
Interview: To request an interview or additional information about Parks Associates, contact Holly Sprague at hsprague@gmail.com, +1.720.987.6614.