Skip to main content

Error message

  • Deprecated function: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in Drupal\Component\Utility\Unicode::validateUtf8() (line 395 of core/lib/Drupal/Component/Utility/Unicode.php).
    Drupal\Component\Utility\Unicode::validateUtf8() (Line: 65)
    Drupal\Component\Utility\Xss::filter() (Line: 351)
    _colorbox_formatter_get_caption() (Line: 140)
    template_preprocess_colorbox_formatter()
    call_user_func_array() (Line: 261)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 254)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->{closure}() (Line: 2058)
    Twig\Extension\CoreExtension::captureOutput() (Line: 44)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 504)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 45)
    __TwigTemplate_1c086714c718e741ecd343a31c9086e1->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 504)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 224)
    Drupal\entity_embed\Plugin\Filter\EntityEmbedFilter->Drupal\entity_embed\Plugin\Filter\{closure}() (Line: 638)
    Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 223)
    Drupal\entity_embed\Plugin\Filter\EntityEmbedFilter->process() (Line: 118)
    Drupal\filter\Element\ProcessedText::preRenderText()
    call_user_func_array() (Line: 113)
    Drupal\Core\Render\Renderer->doTrustedCallback() (Line: 870)
    Drupal\Core\Render\Renderer->doCallback() (Line: 432)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 254)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->{closure}() (Line: 2058)
    Twig\Extension\CoreExtension::captureOutput() (Line: 44)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 375)
    __TwigTemplate_4d692cb352c969d105ee4deba6503588->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 238)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 638)
    Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 231)
    Drupal\Core\Render\MainContent\HtmlRenderer->prepare() (Line: 128)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse() (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray()
    call_user_func() (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() (Line: 186)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 53)
    Drupal\Core\StackMiddleware\Session->handle() (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 28)
    Drupal\Core\StackMiddleware\ContentLength->handle() (Line: 32)
    Drupal\big_pipe\StackMiddleware\ContentLength->handle() (Line: 191)
    Drupal\page_cache\StackMiddleware\PageCache->fetch() (Line: 128)
    Drupal\page_cache\StackMiddleware\PageCache->lookup() (Line: 82)
    Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 50)
    Drupal\ban\BanMiddleware->handle() (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 36)
    Drupal\Core\StackMiddleware\AjaxPageState->handle() (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 741)
    Drupal\Core\DrupalKernel->handle() (Line: 19)
    
  • Deprecated function: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in Drupal\Component\Utility\Xss::filter() (line 69 of core/lib/Drupal/Component/Utility/Xss.php).
    Drupal\Component\Utility\Xss::filter() (Line: 351)
    _colorbox_formatter_get_caption() (Line: 140)
    template_preprocess_colorbox_formatter()
    call_user_func_array() (Line: 261)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 254)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->{closure}() (Line: 2058)
    Twig\Extension\CoreExtension::captureOutput() (Line: 44)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 504)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 45)
    __TwigTemplate_1c086714c718e741ecd343a31c9086e1->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 504)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 224)
    Drupal\entity_embed\Plugin\Filter\EntityEmbedFilter->Drupal\entity_embed\Plugin\Filter\{closure}() (Line: 638)
    Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 223)
    Drupal\entity_embed\Plugin\Filter\EntityEmbedFilter->process() (Line: 118)
    Drupal\filter\Element\ProcessedText::preRenderText()
    call_user_func_array() (Line: 113)
    Drupal\Core\Render\Renderer->doTrustedCallback() (Line: 870)
    Drupal\Core\Render\Renderer->doCallback() (Line: 432)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 254)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->{closure}() (Line: 2058)
    Twig\Extension\CoreExtension::captureOutput() (Line: 44)
    __TwigTemplate_e68b79b8ded550481c188f9d99549233->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 476)
    Drupal\Core\Template\TwigExtension->escapeFilter() (Line: 375)
    __TwigTemplate_4d692cb352c969d105ee4deba6503588->doDisplay() (Line: 387)
    Twig\Template->yield() (Line: 343)
    Twig\Template->display() (Line: 358)
    Twig\Template->render() (Line: 35)
    Twig\TemplateWrapper->render() (Line: 33)
    twig_render_template() (Line: 348)
    Drupal\Core\Theme\ThemeManager->render() (Line: 491)
    Drupal\Core\Render\Renderer->doRender() (Line: 248)
    Drupal\Core\Render\Renderer->render() (Line: 238)
    Drupal\Core\Render\MainContent\HtmlRenderer->Drupal\Core\Render\MainContent\{closure}() (Line: 638)
    Drupal\Core\Render\Renderer->executeInRenderContext() (Line: 231)
    Drupal\Core\Render\MainContent\HtmlRenderer->prepare() (Line: 128)
    Drupal\Core\Render\MainContent\HtmlRenderer->renderResponse() (Line: 90)
    Drupal\Core\EventSubscriber\MainContentViewSubscriber->onViewRenderArray()
    call_user_func() (Line: 111)
    Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() (Line: 186)
    Symfony\Component\HttpKernel\HttpKernel->handleRaw() (Line: 76)
    Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 53)
    Drupal\Core\StackMiddleware\Session->handle() (Line: 48)
    Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 28)
    Drupal\Core\StackMiddleware\ContentLength->handle() (Line: 32)
    Drupal\big_pipe\StackMiddleware\ContentLength->handle() (Line: 191)
    Drupal\page_cache\StackMiddleware\PageCache->fetch() (Line: 128)
    Drupal\page_cache\StackMiddleware\PageCache->lookup() (Line: 82)
    Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 50)
    Drupal\ban\BanMiddleware->handle() (Line: 48)
    Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51)
    Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 36)
    Drupal\Core\StackMiddleware\AjaxPageState->handle() (Line: 51)
    Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 741)
    Drupal\Core\DrupalKernel->handle() (Line: 19)
    

Insects slipping into the US are causing billions of dollars in damage

Inspector examines solid wood packaging. Credit: USDA APHIS.

From a distance, the hemlock trees by the Wappinger Creek in Millbrook, New York, look just fine. But forest ecologist Gary Lovett knows better. He pulls back the twigs and exposes some tiny, white fluffy balls.

"These are the protective coating that's created over the top of the hemlock woolly adelgid, a tiny aphid-like insect," said Lovett.

"They're very tiny, so one of them won't bother the tree. But when we have millions and millions of them on a tree, it eventually kills the tree," explained Lovett, who is with the Cary Institute of Ecosystem Studies in Millbrook, about a two-hour drive north of New York City.

The hemlock woolly adelgid, native to East Asia, is slowly killing trees from Maine to Georgia. It's among the latest in a line of invasive pests slipping into the US.

The pests can arrive on wooden pallets. This basic technology — the pallet that can be scooped up with a forklift — revolutionized international shipping back in World War II. Problem is, pests can burrow into the wood. Pests also hide on plants that are imported.

So, Congress added an amendment in the 2018 Farm Bill, which appears close to passage,to try and prevent this and strengthen regulating and reporting of invasive pests. The bill was offered by Republican John Faso of New York, whose office did not agree to interview requests. Faso was also voted out of office in November’s election.

"I would categorize this as a small step forward, but it's the first step forward," said Lovett, who provided guidance to Faso's office on the amendment.

Lovett offered tepid praise for the amendment because it got watered down — there's nothing in the language about wooden pallets now.

Pallets are an $11.5 billion American business and the industry didn't want more regulation. International rules were already established a dozen years ago — called ISPM 15 — and shipping pallets are now either treated with heat or fumigated.

"I believe in the system, I know that it is effective and I know that the compliance rates are really high," said Brent McClendon, president of The National Wooden Pallet and Container Association. "I know that our governments — all of our governments, both here in the US and abroad — work very hard to have comprehensive inspections at the perimeter and really protect against invasive species."

More than 180 countries participate in the agreement, and McClendon says compliance rates are "well north of 99 percent."

Still, each year some 13 million containers, stacked high with wooden pallets, are shipped to the US. And Lovett says inspectors can't possibly ensure all of those are clean: "You can imagine, they're looking for a bug inside a board, in a pallet, in the bottom of a shipping container."

Wooden shipping pallets can transport pests. Standards established a dozen years ago have helped prevent the outbreak of a major pest infestation in the US, but many are worried that protections are insufficient.

All it takes are a few bad pallets. So, Lovett argues for ditching wood pallets and replacing them with other materials, like recycled plastic or composite wood materials such as plywood or oriented strand board. One problem: those alternatives cost more.

But according to some studies, invasive pests are costing the US economy close to $5 billion a year. Trees don’t just die in forests, they die in cities and our yards.

“Most of the cost is being borne by homeowners and by local governments, municipalities,” says Lovett.

Consider the nearby city of Poughkeepsie, New York, which has a problem with the emerald ash borer, another invasive pest native to Asia, infecting its ash trees.

Poughkeepsie city administrator Mark Nelson brought up a computer map with about 300 dots, color-coded ash trees owned by the city. Red and yellow dots mean the emerald ash borer has found a new host.

“I think it’s safe to say that of the city-owned trees, 90 percent are infected,” said Nelson.

The city has to pay to take the trees down, or eventually they’ll die and fall. (You could imagine the horror story lawsuits were that to happen.) So the city recently took down 50 ash trees. The cost: $82,000.

That might not sound like much, but for a small city with a big deficit, Nelson says, it’s a lot. Trees also improve property values and air quality, and provide shade. They matter a lot to a city.

Multiply Poughkeepsie’s problem across thousands of communities like it.

“Can municipalities fight this fight? And the answer is clearly no,” says Nelson.

By the time a pest is already here, “it’s kind of too late,” said Keri VanCamp who manages nearby Vassar College’s 500-acre Farm & Ecological Preserve. “We dump a lot of resources into trying to control things that should’ve been prevented in the first place.”  

The Preserve has many dying ash trees and VanCamp is experimenting with breeding more pest-resistant trees, as well as biocontrols like importing a wasp native to Asia.  

“It’s a stingless wasp so you don't have to worry. It lays its egg inside the emerald ash borer egg, and the larva of the wasp essentially eats the inside of the eggs,” said VanCamp.

Amazing.

A couple of problems though. The wasp is only partly effective. And releasing foreign wasps on a large scale would also be too expensive, and that could potentially introduce new problems.

So eventually, many of the ash trees in the eastern US will die and new species will take their place. VanCamp said there’s nothing wrong with change. Plant and tree species have always migrated, and humans have helped with that, intentionally or not. Today, however, we’re moving things at an alarming rate.

“Someone described it to me once as like a snow globe, all the species are the little flakes,” said VanCamp. “Humans have most recently just shaken it up and all that snow is flying, and species are landing all over the place. It's creating these kinds of interactions that we don't know what the response is going to be.”

And the whole ecosystem here — the animals, the birds, the fish, the soil — is built around native trees. When a “foundation species” tree like hemlocks disappear, everything about the forest stand changes.

Back by the stream in Millbrook, Gary Lovett says the only way to protect our forests and urban canopies is for politicians to get tough, to prevent pests from arriving here in the first place.

“I’m not much of a politician, but this is a situation where we’re getting a raw deal on trade,” said Lovett. He said not only are some of our trading partners tipping the balance of trade in goods bought and sold, "but they're also sending us nasty bugs along with it.”

More on this topic