Here we have shared an amazing review of the best gaming earbuds.
First of all, on the 10th spot we have Mad Catz E.S. PRO 1 Gaming Earbuds for PC, Consoles & Mobile Devices for you, the is the best multiplatform gaming earbud which you should buy for yourself. You can play and use it anywhere as it is attached and comes with a 35mm audio cable. This cable will be able to link your laptops and also your mobile devices directly.
This ES PRO 1 comprise and consist of a 13.5mm speaker. do you know that this speaker capacity is actually larger and bigger as compared to the rest of the gaming earbuds? It has a bigger ear-can, that means the user will get a fantastic kind of sound clarity and too bass response.
It has dual mics to that a clear chatting experience can be given to the user. This device can just go beyond as compared to the quality of PC headsets. Its ergonomics are wholly adjustable and you will remain comfortable while using these gaming earbuds. It has the easy-in-line controlling system and you can adjust the game volume or can even mute the mic easily.
Then on the ninth spot, we have next recommended gaming earbuds for you and they are MKK 2 Pack Mono Chat Game Gaming Earbuds. These gaming earphones have their compatibility right with ps4 controllers. If you have original ps4 mono earbuds then you will see that these earbuds also work in the exact and similar way.
You can directly and easily connect these gaming earbuds with these ps4 controllers. It comprises of On/Off/Mute microphone controlling system and settings. There is a 3.5mm connector present in it, these earbuds which are used for gaming purpose, they are quite lightweight and they offer portability features.
We recommend you to use this gaming headset, we are sure that exclusive and satisfactory results will be received by you.
We suggest you get this VANTEN Gaming Earbuds for Android Phones, Tablets, Computer PC systems as well! If you think that your current gaming earbud device is not up to the mark and you need to get more latest earbuds for yourself then try this one!
These gaming earbuds can offer superb and best kind of sound experience, they are light in weight and you can easily adjust them into your ears. There is a magnet attraction feature present on these earbuds, that means they can simply stick and be there on your ears for the as much long time as you want!
You can use and plug these gaming earbuds into your laptops and computer systems or into your Android phones, iPhone sets.
On this seventh spot, we have for you these Venom Universal In-Ear Stereo eSports Gaming Earbuds, these earbuds are made of sports style. They have 13mm drivers so that all users can have a superior sound quality result and experience. Its microphones are adjustable, as it comes in a twin headset form, that means its adjustable microphone positioning will give you a maximum comfort.
These great looking gaming earbuds offer universal compatibility options, they can be worked with PS4 and Xbox One and PSP as well as with Xbox 360 and with the rest of the other 3.5mm devices. These gaming earbuds have arrived on the top ten spots and you can get them for yourself if you want to receive and experience amazing and high-quality sound quality.
Moving to the 6th spot, we have ROCCAT SYVA High-Performance In-Ear Gaming Earbud, this gaming earbud can actually give you top-class and high-quality audio experience. It has deep bass and too crisp cables which will make your audio experience more enjoyable. These gaming earbuds come in an ultra-low in weight option, they are extremely easy to wear and you can wear and put on them for an as much extended period and span as you can!
They have the in-cable microphone in them, it means that the user will always get an enhanced clarity while he does voice chat with his friends. The element of premium comfort is delivered by this device, as it is available in 3 ergonomic ear tip sizes, this basically means that people with an ear tip size can wear these gaming earbuds.
It has colored cable tangles, so all in all, this gaming headset is a must buy at your end. Share your review when you get this ROCCAT SYVA High-Performance In-Ear Gaming Earbud.
It has 13.5mm neodymium drivers and you will be delivered with an unbeatable in-ear audio experience. No doubt that this headset is attached to one of the natural and high-reliability options, it has crisp trebles and also powerful bass.
It has a flat cable which is tangle-free. Now you do not have mess with frustrating kind of cable tangles. Have fun with these gaming earbuds and share your feedback.
Its design is basically of dual-inline nature and completely detachable. If you want to play games or wants to listen to music if you want to watch a movie or wants to have a voice chat with your friends then get this headset. It works on the premium audio technology aspect and possesses an exceptional design as well.
On this fourth spot, we have Granvela G10 In-Ear Headphones, they are high-quality gaming earbuds which comprise of 9mm drivers along with these neodymium magnets. Its design is made according to the noise-isolating aspect. You will get a superior fitting experience while availing and using these Granvela gaming earbuds.
This headset can easily block any kind of ambient noise and any sort of distractions. It is packed with adapters as well so that you can use these microphones with your PC system. Now you does not have to wear these heavy and too hot gaming headphones because these lightweight and easy to wear gaming earbuds have arrived now.
It has a 5.5-feet-long cord and a jack, its body is all sleek looking, it has an aluminum body. This product is convenient to carry, it has a compact looking carrying case and moreover, its ear gels are interchangeable. You will get two Memory Foam ear tips and three of the different ear gel sizes with the product.
For those who want to buy durable, longlasting gaming earbuds, they can have Zahara Gaming Earbuds with Dual Mic as an option for them. This earbud is the best solution for all gamers if you are one of the pro-gamers and you enjoy gaming at your fullest then get this decent looking headphone for yourself.
It can deliver just an unbeatable in-ear audio result and it also possesses secure kid of fit systems in it. It is designed in a manner so that it can be nestled in your ear easily. With the package, the buyer will get three sizes of silicone sleeves. It is lightweight and constructed by a stainless steel material, we suggest you to buy this detachable omnidirectional microphone which can absolutely give a clearer and best of the voice communication settings.
It has an Extension cord attached to it which has a total cable length up to 7.2ft and this gaming headphone can be worked and be made compatible with Nintendo Switch and Nintendo 3DS and also with the rest of the Mobile Phone types and iPhone sets and with Samsung Galaxy. You can use it with your PlayStation 4 and Xbox, Laptop systems and computers.
Its silicone ear tips are available in three sizes, it is eco-friendly and convenient to be used product.
These headphones comprise of a sleek cord and this cord is packed with different colors. It has the most stylish design and just the high-end sound quality experience is given out by these gaming earbuds.
Lastly, for the readers, we have Marsno M1 Wired Metal In Ear Gaming Earbuds, they offer a stereo bass sound as well as noise isolating experience. This product has been brilliantly engineered and further installed with high-quality and dynamic drivers. It is these drivers which can pump out powerful and deep bass crisp highs and a fun and enjoyable listening experience.
These gaming earbuds are made of solid in form sound-insulating material, it is packed with a full aluminum alloy housing and this housing is also corrosion-resistant and more durable. Its design is compact and these gaming earbuds are best while you are doing exercising or traveling or while you are enjoying music.
It has a built-in microphone and this element can easily eliminate all kinds of exterior noise, you will get a lifetime warranty once you buy this product.
Pick out the reliable gaming earbud for yourself from the above-mentioned list and share your review with us.


Building Lot with an ownership of a beach lot which is shared by 6 family's. This is a lovely 10.01 acres perfect for a hillside home! The waste water permit is in place and town water is at the road. Design your 4 bedroom dream home. The owned beach lot is #3 and is approx. 203 feet of frontage and has a lovely shared fire pit, and if you would like to join in on the dock there are three families that share that dock. The clean and clear water is excellent for swimming. Big waves as you are on the broad lake facing west! The beach lot is a short drive of about 1500 feet down your driveway to West Shore Road, then across the street to the Lot #3 the shared ownership of the beach lot.


text:
Guest Editor's Introduction
The Meadowlands Before the Commission: Three Centuries of Human Use and Alteration of the Newark and Hackensack Meadows
Biodiversity Patterns and Conservation in the Hackensack Meadowlands, New Jersey
Species Composition and Food Habits of Dominant Fish Predators in Salt Marshes of an Urbanized Estuary, the Hackensack Meadowlands, New Jersey
Spartina alterniflora and Phragmites australis as Habitat for the Ribbed Mussel, Geukensia demissa, in Saw Mill Creek of New Jersey's Hackensack Meadowlands
Influence of Sediment Characteristics on Heavy Metal Toxicity in an Urban Marsh
Hyperspectral Remote Sensing of Habitat Heterogeneity Between Tide-Restricted and Tide-Open Areas in the New Jersey Meadowlands
Evaluating Urban Wetland Restorations: Case Studies for Assessing Connectivity and Function
Historical and Current Ecology of the Lower Passaic River
Floristic Investigations of Historical Parks in St. Petersburg, Russia
by Carolyn S. Bentivegna, Joy-Elaine Alfano, Sean M. Bugel, and Katarzyna Czechowicz
Department of Biology, Seton Hall University, South Orange, NJ 07079
Remediation and protection of urban wetlands are gaining public support as the contribution of these wetlands to biodiversity, and their importance to local fisheries and wildlife, become better understood. When developing remediation strategies, it is important to consider the key parameters that influence availability and toxicity of contaminants to which plant and animal life are exposed. Kearny Marsh is an important component of the Hackensack Meadowlands, which, located as they are in one of the most populated metropolitan areas in the United States, have been subjected to urban encroachment. We undertook studies to determine what sediment and detritus characteristics might be influencing heavy metal toxicity in Kearny Marsh. Toxicity parameters included sediment grain size, percentage of total organic carbon (%TOC), SEM–AVS, and heavy metal concentrations in whole sediment and detritus. These parameters were correlated with ten-day survival and growth, under laboratory conditions, of the aquatic larvae of Chironomus riparius (midge fly) in order to determine what factors were having the most effect on toxicity. Data showed that both sediment and detritus were highly contaminated with heavy metals. High metal levels in detritus had a significantly negative effect on the survival and growth of Chironomus larvae. Conversely, high iron-to-metal ratios in both sediment and detritus were correlated with reduced toxicity. The %TOC in sediments was linked to larval growth in October but not in June. SEM–AVS and grain size were not good indicators of toxicity. We conclude that detritus and iron could prove to be important factors for controlling and remediating heavy metal toxicity in Kearny Marsh and other wetlands in highly urbanized areas.
Key words: Acid volatile sulfides; Chironomus; detritus; Hackensack Meadowlands; heavy metals; iron; remediation; sediment; total organic carbon; toxicity testing; wetland.
Kearny Marsh, in New Jersey, is a 320-acre freshwater wetland within the 8,400-acre estuary system known as the Hackensack Meadowlands. It has been heavily impacted by urban sprawl, including landfill construction within the marsh, housing and commercial development around the marsh, and the 1970 extension of the New Jersey Turnpike (Interstate Highway 95) through the marsh. Extension of the turnpike involved the installation of a dike that separated the marsh from the tidal flow of the Hackensack River and left it with no natural inlet or outlet of water. This allowed contaminants to settle into and concentrate in sediments. Because of its size and uniqueness as a freshwater wetland, Kearny Marsh is an important component of the Hackensack Meadowlands, and there is now increased interest in preserving the remaining acreage and improving its environmental health. Wetlands are highly productive ecosystems that usually provide an abundance of food for a diversity of fish and bird species, and eventually, through the food chain, for humans. Although Kearny Marsh has been damaged due to urbanization, marshes have incredible regenerative ability in general, and intervention at Kearny might improve its productivity.
Kearny Marsh sediments are severely contaminated with heavy metals (Langan Engineering and Environmental Services, Inc., 1999), so improving the marsh might require costly sediment remediation. However, the extent to which Kearny Marsh sediments are actually toxic has not been investigated. A critical factor for sediment toxicity is contaminant bioavailability—the degree to which contaminants can be taken up by plants and animals (Ankley, Di Toro, Hansen & Berry, 1996). Sediment parameters that affect heavy metal bioavailability include cation exchange capacity (CEC), total organic carbon (TOC), iron (Fe) and manganese (Mn) oxides, as well as the relationship between acid volatile sulfides (AVS) and simultaneously extracted metals (SEM). Following is a brief explanation of these parameters.
Cation exchange capacity is based on the surface area of sediment grain particles available for binding cations, such as hydrogen (H+) and free metal ions (e.g., Mn+2). Sediments with a high percentage of small grains, such as silt and clay, have high surface-to-volume ratios and can adsorb more heavy metals than sediments composed of large grains, such as sand. Total organic carbon is added to sediments primarily through the decomposition of plant and animal matter. Organic carbon can directly adsorb heavy metals from solutions applied to sediments (Liber et al., 1996). However, it can also contain heavy metals accumulated by plants that have been exposed to contaminated sediment during their lifetimes (Peltier, Webb & Gaillard, 2003). Nonetheless, high percentages of organic matter and/or small grains in sediment are generally associated with reduced heavy metal bioavailability and toxicity (Ankley et al., 1996).
Iron and Mn are major heavy metal components of both soil and sediment and can exist as dissolved ions or various precipitates, such as oxyhydroxides (oxides) and sulfides. Both Fe and Mn oxides can remove other heavy metals from solution, thus making them less bioavailable (Fan & Wang, 2001). One way they do this is by precipitating heavy metals from solution during oxide formation (Simpson, Rosner & Ellis, 2000); another is direct adsorption onto preformed oxides (Dong, Nelson, Lion, Shuler & Ghiorse, 2000). Sulfide is known to interact with Fe under anaerobic conditions to form a solid, iron sulfide (FeS). Other heavy metals such as copper (Cu), lead (Pb), nickel (Ni), and zinc (Zn) can be removed from solution by displacing Fe and binding to the sulfide. This process has led to a relatively new parameter for evaluating sediment toxicity: simultaneous extracted metal minus acid volatile sulfide (SEM–AVS). The term AVS represents the amount of sulfide in sediments available for binding heavy metals; SEM represents the amount of heavy metals in sediment that could be available to plants and animals. If SEM exceeds AVS, the sediments are potentially toxic (Di Toro et al., 1990; Hansen et al., 1996).
Testing sediments for toxicity generally relies on the use of test organisms. A common test organism is the aquatic larva of the chironomid Chironomus riparius (midge fly). Chironomid larvae, such as those of Chironomus riparius and Chironomus tentans, are detritivores, and they live in intimate contact with sediments. Standardized procedures have been developed that use reduced survival and weight in chironomids as indicators of toxicity in sediments (American Society for Testing and Materials [ASTM], 1992; U.S. Environmental Protection Agency, 1994). Chironomids have also been used in laboratory (Call et al., 1999) and field studies (Liber et al., 1996) to evaluate the influence of parameters such as SEM–AVS and TOC on sediment toxicity. In addition to being valuable test organisms, chironomids are environmentally important components of aquatic food webs (Armitage, Cranston & Pinder, 1995). Several species of chironomids live in Kearny Marsh (Bentivegna, personal observation).
The goals of this study were to evaluate the toxicity of Kearny Marsh sediments and investigate what sediment parameters might be associated with that toxicity. We evaluated sediment toxicity by measuring the ten-day survival and growth of chironomids. Testing was performed with either whole sediment or the detrital fraction (partially decayed organic matter) of the sediment in order to determine what contribution plant matter was making to overall sediment toxicity. Other parameters tested included grain size, TOC, SEM–AVS, and total heavy metal concentrations in sediment and detritus. Our focus was on heavy metals because previous studies had already indicated toxic levels of metals in Kearny Marsh sediments, while the same studies had shown organic contaminants (polychlorinated biphenyls, chlorinated pesticides, and polynuclear aromatic hydrocarbons) to be at lower levels (Langan Engineering and Environmental Services, Inc., 1999). We anticipated that our results would indicate whether there was a need for sediment remediation in the marsh, and if so, what the best remediation approach would be.
Kearny Marsh is part of the Hackensack Meadowlands in northeastern New Jersey. The marsh is located just west of New York City, New York, and north of Newark, New Jersey. To the west of the marsh is the town of Kearny; to the east are the Hackensack River and its associated wetlands. The marsh is surrounded by highways and railroad tracks that serve commuter traffic in one of the most populous metropolitan areas in the United States (Figure 1).
Water-quality data collected during our study (2002–03) showed the marsh to be an oligohaline wetland, with salinity ranging from 0.5 to 2.6 parts per thousand (ppt). Our study area was shallow, with depths of 0.5 to 3 feet, and had low dissolved oxygen ranging from 0.1 to 3.5 parts per million (ppm) during the months of May through October. Water temperature during the same months ranged from 14°C to 34°C (57.2°F to 93.2°F).
Sediment and Detritus Collection and Analyses
We collected sediment and detritus from six sites in Kearny Marsh. These sampling sites were numbered 3, 7, 9, 10, 18, and 22 (see Figure 1). Substrates were collected on June 5, 2002, and October 18, 2002, using an Ekman dredge. Toxicity testing was done on whole sediment or detritus. We separated detritus from whole sediment on site by sieving the sediment through a 1,000-micrometer mesh, using site water. Substrates were stored in polypropylene containers at 4∫C (39.2°F). Sediment was used in toxicity tests within two weeks of collection; detritus was tested within one month of collection. We analyzed sediment and detritus for heavy metal content (described below), as well as for %TOC, grain size, and AVS–SEM. Samples for AVS–SEM were stored at –70°C (–94°F).
Sediment characterization was done as follows. We analyzed TOC and grain size using American Society for Testing and Materials methods (ASTM, 1992). For TOC, we measured samples by the volatile solids technique, which involved drying sediments and burning off organic matter in a furnace for 16 hours at 550°C (932°F). Percentage TOC was calculated based on the change in sediment weight before and after ignition (ASTM method D2974). We determined grain size by drying whole sediments, grinding them up, and then sieving them through different-size meshes to establish percentages of gravel, sand, and silt+clay (ASTM method D422).
We analyzed AVS and SEM according to Allen, Fu, Boothman, Di Toro, and Mahony (1994). We constructed a closed AVS apparatus consisting of an 8- to 16-vessel train linked together with Nalgene tubing. Nitrogen gas was used to volatilize and transport reactants through the train. Each station of the train consisted of one reaction vessel containing oven-dried sediment (7–14 g*), deionized water (200 ml), and hydrochloric acid (HCl) (10 ml of a 6 M solution) to acidify samples; one vessel containing a pH 4 buffer (potassium phosphate 0.05 M) through which gas flowed to acidify the train; and two silver nitrate traps (200 ml 0.1M AgNO3) into which sulfides flowed from the reaction vessel. At the end of the train was 1 M HCl (200 ml) for acidification of sediment samples. Before being passed through the reaction vessels, the nitrogen gas was deoxygenated and acidified by passing it through an oxygen scrubber (0.02 M H4NO3V, 0.014 M HgCl2) and a pH 4 buffer. All solutions in the train were deoxygenated before use. Reactions ran for two hours, after which vessel contents settled for 30 minutes. Sediment sulfide content (AVS) was analyzed by filtering the combined contents of the two silver nitrate traps through 1.2-millimeter filter paper (Fisher Scientific, Pittsburgh), drying the residue for 40 minutes at 104°C (219.2°F), desiccating it for 20 minutes at room temperature), and then determining the change in filter-paper weight. We analyzed the SEM by collecting 100 to 160 milliliters of the acidified water from the reaction vessel and measuring Cd, Cu, Ni, Pb, and Zn, as described below. Silver nitrate traps were standardized by adding 3 to 6 milliliters of 0.1 M sodium sulfide (NaS) to the AgNO3 solution used in the train; then the AVS was analyzed as described above. The AVS from the samples was based on the micromoles (µmol) of sulfides in the traps adjusted for the standard and divided by the quantity of dried sediment added to the reaction vessel, giving µmol/g. The SEM was based on the combined µmol of Cd, Cu, Ni, Pb, and Zn divided by the quantity of dried sediment added to the reaction vessel.
Heavy Metal Analysis
For metal analysis, sediment samples were oven dried (yielding 1–2 g dry weight), weighed, and mineralized in 10 milliliters of trace-metal-grade nitric acid (HNO3) using Teflon bombs in a microwave digester. The resulting mineralized solution was boiled off to near dryness and restored to 10 milliliters volume with 1% HNO3. We analyzed SEM samples without further processing. Cadmium (Cd), chromium (Cr), Cu, Fe, Mn, Ni, Pb, and Zn were analyzed by flame or graphite-furnace atomic absorption spectrophotometry (using Varian Spectra AA-220FS), depending on the metal concentration. Mercury (Hg) analyses were performed by cold-vapor generation (VGA-77) using a Bacharach MAS-50D mercury analyzer. Trace Metal Standard 1 (Baker Instra-Analyzed Reagent, lot number V47419) was used as a quality control sample and run with each set of samples along with a blank. Data provided were the average of two replicates.
Subchronic toxicity tests followed standard methods (ASTM, 1992). We used second instar Chironomus riparius and ran the tests for ten days. Chironomids were obtained from a laboratory culture maintained by Bentivegna. Two separate subchronic tests were performed and replicated three times (for a total of six tests) on sediment and detritus collected from all sites in June and October. Each replicate started with ten chironomids, which were not fed for the duration of the experiment. Toxicity measurements were based on chironomid survival and weight. Survival was defined as the number of living individuals found after ten days. We determined chironomid weight by collecting survivors from a particular replicate, blotting them dry, and weighing them together. Initial weights were taken from a representative group of ten chironomids at the start of each experiment for comparison.
Conditions for the toxicity tests were as follows. We put 50 milliliters of sediment or 5 grams of detritus, along with 250 milliliters of test water, in one-liter polypropylene containers. The test water was particle and carbon filtered using CDPRM1206 and CDFC01204 filters (from the Millipore Corporation, Billerica, Massachusetts). Test-water hardness (i.e., its concentration of calcium and magnesium) was 130 mg/L. Substrate and water were combined and allowed to sit overnight; chironomids were added the next day. The containers were kept static, and any evaporated water was replaced daily with distilled or deionized water. The containers were exposed to 12 hours of light and 12 hours of darkness. Temperature ranged from 23°C to 26°C (73.4°F to 78.8°F). The pH was taken at the beginning and end of each experiment (using Sentron Model 2001 pH System, Sentron Inc., Gig Harbor, Washington); pH values ranged from 7.1 to 7.7 for sediments and 7.3 to 7.8 for detritus.
Controls for sediment and detritus toxicity testing were set up as follows. In the sediment tests, both positive and negative controls consisted of chironomids exposed to acid-washed sand (from American Stone-Mix, Inc., Towson, Maryland) in 250 milliliters of test water, and fed biweekly on ground fish food (three drops of 0.1 g/ml Tetracichlid; Tetra GMBH, Melle, Germany). Cadmium (Cd) was added to the positive control to a concentration of 0.3mM, while the negative control received no Cd. We fed the control chironomids because the sand had no nutritional value and would not support chironomid survival or growth over a ten-day period. Positive and negative controls for the detritus tests consisted of detritus collected from site 3, along with the same amounts of test water and fish food used in the sediment controls. The positive detritus control also had Cd added to a concentration of 0.3 M, while the negative control had no added Cd. A positive control was not run for June detritus. We fed the detrital control chironomids in order to provide them with an alternative, uncontaminated source of food and distinguish their responses from those of the test chironomids that were exposed to site 3 detritus alone. The pH for the controls ranged from 7.3 to 7.9 in the sediment tests and 6.8 to 7.4 in the detritus tests.
We performed statistical analyses by combining data from the two experiments run for each substrate (sediment and detritus) at each collection time (June and October). Statistical differences for survival and growth in the sediment and detritus treatments were determined by one-way ANOVA, followed by Tukey post hoc tests, p ≤ 0.05. Differences between detritus and sediment from each site and collection time were determined by independent sample T-test, p ≤ 0.05. The statistical relationship between chironomid survival and growth and sediment parameters was determined by bivariate correlation using the Pearson coefficient in a two-tailed test, p ≤ 0.05. All statistical analyses were performed using SPSS software (Version 12.0).
In order to investigate the role of sediment versus detritus toxicity of marsh sediments, we tested whole sediment and its detrital fraction separately. Results for the sediment toxicity tests showed significant differences in survival between sites (Table 1). In June, survival for site 7 was significantly reduced compared with the negative control (–C) and sites 3 and 22, p ≤ 0.05. Survival in October sediment was significantly reduced in sites 7 and 22 compared with –C and sites 3, 9, 10, and 18. Results for growth also showed statistically significant differences in June and October. For June, site-7 growth was similar to the positive control (+C) growth and significantly reduced compared with growth at sites –C, 9, and 18. October results differed from June in that growth was significantly reduced in sites 9, 10, and 18 compared with –C and site 22. Results for detritus showed no statistically significant effects on survival in June or October, although site-10 survival was suppressed in both months (Table 2). Growth in site-10 detritus was significantly reduced compared with –C and sites 7 and 9 in June and October; site-10 results were similar to +C. In addition, site-18 growth was significantly reduced in October detritus.
Our toxicity test results were complicated by the difficulty of finding all the surviving chironomids due to their small size. The nutritional value of the sediment and detritus in general was poor; unfed larvae only doubled or tripled their weights. Data did show that sediment and detritus from some sites, most consistently 7 and 10, were toxic, as growth was similar to that of +C (Tables 1 and 2). Comparison of the two substrates showed that neither consistently supported growth and survival better than the other (Figures 2 and 3). However, detritus did prove superior to sand in –C.
The results of our sediment characterization tests are presented in Table 3. The TOC levels in sediments were very high, ranging from 7% to 87%. This indicated a large amount of detritus in the sediments, which was expected because of the annual dieback of wetland grasses and poor microbial degradation found in suboxic marshes. Sediments were primarily composed of sand, which ranged from 70% to 94%. When combined, the smaller particles of silt and clay ranged from 4% to 31%. Taken together, the percentage of silt+clay was similar between June and October sediments. There were two notable exceptions: At site 18, June sediments were 2.5 times higher than October sediments, and at site 22, June sediments were 6.3 times higher than those in October. This may have been due to variation in the sediment composition at our sampling sites. The SEM–AVS values were all negative, indicating that more sulfide was present than biologically available metals. The AVS values did show apparent seasonal differences: Values in October were considerably higher than in June for most samples. For example, AVS for site 3 was 385.62 µmol/g in October and 37.37 µmol/g in June.
We measured heavy metals in both sediment and detritus and then compared our results to sediment quality guidelines established by the Ontario Ministry of the Environment (1993). These guidelines provide concentrations of metals that have no effect on the majority of sediment-dwelling organisms, designated as "lowest effect level" (LEL), and concentrations that indicate polluted sediment and are likely to affect organism health, designated as "severe effect level" (SEL). Most sites had sediment concentrations of Cr, Cu, and Pb above the SEL (Table 4). Therefore, based on their heavy metal content, sediments should have been toxic. Sites 7 and 9 had the most heavy metals exceeding SEL. Site 22 had no heavy metal concentrations exceeding SEL, but Cd, Cu, Ni, and Pb exceeded LEL. Cadmium did not exceed SEL in any of the sediments but did exceed the LEL for all sites. Results for detritus showed that it was also highly contaminated (Table 5): Copper exceeded SEL in all samples; Cd exceeded SEL for all June samples and site 18 for October. Based on heavy metal concentrations, site 7 was the most contaminated and site 22 was the least contaminated. Substrate comparisons showed that detritus consistently had similar or greater concentrations of Cd, Cu, Ni, and Zn than whole sediment (Figure 4). October detritus also had greater concentrations of Fe and Pb compared with that of sediment. June detritus from site 10 had ten times more Cd than that of sediment. Clearly detritus was an important source of heavy metal contamination in marsh sediments.
We correlated sediment and detritus parameters with chironomid survival and growth in order to ascertain which parameters were having the most effect on toxicity (Table 6). Sediment toxicity was compared with silt+clay, %TOC, and total heavy metal concentrations in detritus (DT-MT) and sediment (SD-MT). Total heavy metal concentrations were the sum of Cd, Cr, Cu, Hg, Ni, Pb, and Zn. We did not include Fe and Mn because we did not consider them toxic at the levels found in this study. For June sediments, the only statistically significant correlation was for survival and DT-MT (–0.865), in that better survival correlated with low heavy metal concentrations in detritus. For October sediments, there were no significant correlations with survival. However, %TOC (–0.863) and DT-MT (–0.939) showed significant negative correlations with growth, indicating that the organic component of the sediments was toxic.
The influence of Fe was evaluated by correlating total metal concentration, AVS SEM, Fe/MT (the ratio of iron to heavy metal), and Fe in sediment and detritus with chironomid survival and growth. The results for total metals, Fe/MT, and Fe are illustrated in Figure 5. June and October sediments showed no statistically significant correlations between Fe parameters and survival. However, there were relatively strong negative correlations for June survival with total metals (–0.719) and Fe (–0.791), which suggested toxicity due to high metal concentrations in general. We found strong but not significant negative correlations for sediment growth with SEM–AVS in June (–0.649) and October (–0.863), indicating sulfides might be limiting heavy metal toxicity. Data for site 22 were not included in the correlations. This site had unusual concentrations of insoluble iron, presumably because it was located close to an old railroad track. The strongest and most significant correlation was between chironomid growth and Fe/MT (0.955) in October sediments. This indicated that sediments with a high proportion of Fe were less toxic. Total metals in detritus correlated poorly with chironomid survival and growth in June (0.392 and –0.060, respectively) and October (0.076 and –0.392, respectively). Correlations improved when Fe content was considered. There were nonsignificant positive relationships between growth and Fe/MT and between growth and Fe in both June (0.575 and 0.663, respectively) and October (0.873 and 0.676, respectively) detritus. Correlations were statistically significant for survival and Fe (0.900) in June detritus and for growth and Fe/MT (0.873) in October detritus. Overall, our data indicates that metals in detritus are an important source of sediment toxicity and that Fe in detritus supports better growth and survival.
We characterized Kearny Marsh sediments in terms of common parameters such as grain size, %TOC, and SEM–AVS in order to investigate to what extent they might be contributing to, or moderating, sediment toxicity. The TOC in Kearny Marsh sediments ranged from 7% to 87% and was greater than 32% in most samples. This large amount of organic matter, found primarily in the form of poorly decomposed plant matter, was probably due to suboxic conditions in the marsh. Similar TOC levels (50%–70%) have been found in oligohaline wetlands (approximately 0.5 ppt–2 ppt salinity) in Canada (Bendell-Young, Thomas & Stecko, 2002). The TOC has varied widely, even for similar ecosystems. For example, TOC in Foundry Cove, an oligohaline wetland in the Hudson River watershed, New York, was found to be 0.8% to 13% (Hansen et al., 1996), much lower than that of Kearny Marsh. Kearny Marsh grain size was dominated by sand, typically at levels greater than 80%. These sand levels were similar to those found in Massachusetts salt marshes, which averaged 80% (Hansen et al., 1996). Since Kearny Marsh was once connected to the Hackensack River estuary system, the high percentage of sand in its substrate seems reasonable. The AVS values in sediments were high: 5 to 79 µmol/g in June and 45 to 499 µmol/g in October. These AVS levels were comparable with those found in other suboxic wetlands, which ranged from 50 to 400 µmol/g (Sundelin & Eriksson, 2001). The AVS concentrations well exceeded SEM in most samples, suggesting that sediments should not be toxic. This indicates that some other factor(s) caused the poor growth of chironomids in the toxicity tests (see below).
When testing sediments for toxicity, researchers commonly use test organisms that incorporate and respond to multiple toxicity parameters and allow them to discriminate measurable concentrations of contaminants. The bulk of the literature on the subject shows that various, natural sediment components can interact with contaminants and limit their bioavailability and associated toxicity (Ankley et al., 1996). In this study, we tested whole sediment and its detrital fraction from several sites in the Kearny Marsh using larvae of a common benthic macroinvertebrate, Chironomus riparius (midge fly). Our data showed that neither whole sediment nor detritus supported good chironomid growth (Tables 1 and 2). Chironomids merely doubled or tripled their size over a ten-day exposure period while controls fed on an alternate food source usually grew to ten times their initial weights. Since chironomid growth correlated with several factors known to control heavy metal bioavailability (Table 6), it is likely that effects were due to sediment and detritus toxicity. The case for poor sediment quality was supported by the absence of resident organisms; only an occasional nematode was actually found in sediments. Ingestion appeared to be an important route of contaminant exposure for the larvae, as there was an excess of free sulfides (AVS) to bind up any free heavy metals that might be absorbed through larval cuticles or gills. Also, larvae grew well in sediment and detritus samples to which fish food was added (all data not shown). For example, larvae in site 3 detritus showed good mean growth (4.698 ± 0.302) with fish food but poor mean growth (0.928 ± 0.146) without it.
Previous studies have shown that the major contaminants in Kearny Marsh sediments were heavy metals (Langan Engineering and Environmental Services, Inc., 1999). In this study, five of six sites had sediments with SELs of Cr, Cu, and Pb based on established sediment quality guidelines (Table 3). Two sites, 7 and 9, were also severely contaminated with Hg. Site 9 had the highest level of total toxic metals. Metal concentrations were similar to or greater than those found in the Hackensack River and Newark Bay, which were 10±6 mg/kg Cd, 237±222 mg/kg Cu, 2.1±2.6 mg/kg Hg, 39±49 mg/kg Ni, 421±571 mg/kg Pb, and 395±403 mg/kg Zn (Bonnevie, Huntley, Found & Wenning, 1994). Surprisingly, detritus not only had heavy metal concentrations above sediment LELs, but it also contained higher concentrations of Cd, Cu, Pb, and Zn than sediments (Table 4 and Figure 4). Kearny Marsh is dominated by the wetland grass Phragmites australis (common reed), which actively accumulates heavy metals in its roots (Peltier et al., 2003). Decomposition of these contaminated roots over time could have contributed to the heavy metals in the marsh detritus. Alternatively, the detritus could have adsorbed the heavy metals from overlaying water. Windham and coworkers found that submerged litter from wetland plants accumulated heavy metals in excess of sediment concentrations (Windham, Weis & Weis, 2004). As in our study, they determined that Cu, Pb, and Zn adsorption was greater than that of Cr and Hg. In either case, detritus might have contributed to an unstable pool of metals that were more or less available during the year. This was supported by metal concentrations in detritus that were consistent with the release of Cd under oxic conditions (early June) and of Pb under suboxic ones (early fall) (Reddy & Patrick, 1977).
Several sediment and detrital parameters showed statistically significant correlations with chironomid survival and growth (Table 6). This indicates that the parameters were influencing toxicity even though responses between sites did not appear to be very different (Figures 2 and 3). In our sediment experiments, metal concentrations in detritus (DT-MT) correlated with chironomid survival in June samples (–0.874) and chironomid growth (–0.940) in October samples. Correlations indicate that chironomid survival and growth were better when metal concentrations in detritus were low, and that metal concentrations in whole sediment were less influential. The complexity of larval responses was shown by the lack of correlation between DT-MT and chironomid growth in June (–0.174). In this instance, it is possible that the death of some larvae allowed less sensitive ones to acquire more food and grow normally. Iron concentrations in sediment and detritus appeared to be an important factor controlling substrate toxicity. When Fe levels increased or exceeded relative to the combined total of other metals (Fe/MT), toxicity was reduced. This relationship was seen in October sediment and detritus and in June detritus (Figure 5). Iron chemistry of sediments is known to control heavy metal bioavailability. Research has shown that Fe oxide precipitates can adsorb heavy metals (Dong et al., 2000) and that sulfides can exchange Fe for other toxic metals, forming less available metal sulfide precipitates (Hansen et al., 1996). The formation of metal sulfides has been used to explain the apparent lack of toxicity for anaerobic sediments that are highly contaminated with heavy metals (Lau & Chu, 2000). In our studies, sulfides did not appear to be a significant factor as measured by SEM–AVS. The AVS values did show seasonal variation, being lower in June and higher in October (Table 3). Research has shown that wetland plants create oxygenated microenvironments around their roots and thereby release sulfides from sediments (Azzoni, Giordani, Bartoli, Welsh & Viaroli, 2001). Data presented here support the idea of oxygenated microenvironments, in that there were fewer sulfides in sediment during active plant growth (June) and more when plants are less active (October). However, sediments were toxic even when there were high levels of sulfides (AVS) available to bind heavy metals. Correlations with detrital parameters indicate that organic Fe complexes are more important for moderating the toxic effect of heavy metals.
The results of this project show Fe and detritus to be controlling factors of toxicity at Kearny Marsh. These findings suggest several approaches for remediating Kearny Marsh. The marsh is suboxic, which is the primary factor limiting biodiversity. Increasing water circulation by reconnecting it to the Hackensack estuary and/or increasing coverage by wetlands plants would likely improve dissolved oxygen levels. One concern about increased circulation would be the release of heavy metals from metal sulfides and detritus into the water column and the subsequent contamination of the Hackensack estuary. However, the substantial amount of Fe in marsh sediments and the production of metal-binding Fe oxides under more aerobic conditions would probably limit the redistribution of toxic heavy metals (Liang, McNabb, Paulk, Gu & McCarthy, 1993). Another approach would be to cap sediments. In aquatic ecosystems this is usually achieved with sand. However, sand does not provide an appropriate substrate for the type of macroinvertebrates found in oligohaline wetlands. Capping with clay-based substrates amended with Fe and organic matter would complement the natural chemistry of the area and provide a better substrate for macroinvertebrate colonization. We recommend further studies of metals in the sediment of Kearny Marsh and also an investigation of the potential contribution of organic contaminants to sediment toxicity.
This work was supported by a Meadowlands Environmental Research Grant (MERI) to Carolyn Bentivegna, 2002–03. Paul Dombrowski provided technical support for AVS analyses. Reena Patel assisted with toxicity testing. Sediment collection and analyses were supported and/or performed by MERI personnel including Kirk Barrett, Edward Konsevick, Yefim Levinsky (metals), Mary Neer (TOC-grain size), and Joseph Sarnoski (substrate collection and environmental monitoring).
Allen, H.E., Fu, G., Boothman, W., Di Toro, D.M. & Mahony, J.D. (1994). Determination of acid volatile sulfides and simultaneously extractable metals in sediment. Government Reports Announcements & Index, Issue 18 [NTIS].
American Society for Testing and Materials (ASTM). (1992). Standard guide for conducting sediment toxicity tests with freshwater invertebrates. Philadelphia: Author.
Ankley, G.T., Di Toro, D.M., Hansen, D.J. & Berry, W.J. (1996). Technical basis and proposal for deriving sediment quality criteria for metals. Environmental Toxicology and Chemistry, 15, 2056–2066.
Armitage, P.D., Cranston, P.S. & Pinder, L.C.V. (1995). The Chironomidae: Biology and ecology of non-biting midges. New York: Chapman and Hall.
Azzoni, R., Giordani, G., Bartoli, M., Welsh, D.T. & Viaroli, P. (2001). Iron, sulphur and phosphorus cycling in the rhizosphere sediments of a eutrophic Ruppia cirrhosa meadow (Valle Smarlacca, Italy). Journal of Sea Research, 45, 15–26.
Bendell-Young, L.I., Thomas, C.A. & Stecko, J.RP. (2002), Contrasting the geochemistry of oxic sediments across ecosystems: A synthesis. Applied Geochemistry, 17, 1563–1583.
Bonnevie, N.L., Huntley, S.L., Found, B.W. & Wenning, R.J. (1994). Trace metal contamination in surficial sediments from Newark Bay, New Jersey. Science of the Total Environment, 144 (1–3), 1–16.
Call, D.J., Polkinghorne, C.N., Markee, T.P., Brooke, L.T., Geiger, D.L., Gorsuch, J.W. & Robillard, K.A. (1999). Silver toxicity to Chironomus tentans in two freshwater sediments. Environmental Toxicology and Chemistry, 18, 30–39.
Di Toro, D.M., Mahony, J.D., Hansen, D.J., Scott, K.J., Hicks, M.B., Mayr, S.M. & Redmond, M.S. (1990). Toxicity of cadmium in sediments: The role of acid volatile sulfide. Environmental Toxicology and Chemistry, 9, 1487–1502.
Dong, D., Nelson, Y.M. Lion, L.W., Shuler, M.L. & Ghiorse, W.C. (2000). Adsorption of Pb and Cd onto metal oxides and organic material in natural surface coatings as determined by selective extractions: New evidence for the importance of Mn and Fe oxides. Water Research, 34(2), 427–436.
Fan, W. & Wang, W-X. (2001). Sediment geochemical controls on Cd, Cr, and Zn assimilation by the clam Ruditapes philippinarum. Environmental Toxicology and Chemistry, 20, 2309–2317.
Hansen, D.J., Berry, W.J., Mahony, J.D., Boothman, W.S., Di Toro, D.M., Robson, D.L., Ankley, G.T., Ma, D., Yan, Q. & Pesch, C.E. (1996). Predicting the toxicity of metal-contaminated field sediments using interstitial concentration of metals and acid-volatile sulfide normalizations. Environmental Toxicology and Chemistry, 15(12), 2080–2094.
Langan Engineering and Environmental Services, Inc. (1999). Sediment and water quality report: Kearny Marsh, Kearny, New Jersey. Elmwood Park, NJ: Author.
Lau, S.S.S. & Chu, L.M. (2000). The significance of sediment contamination in a coastal wetland, Hong Kong, China. Water Research, 34(2), 379–386.
Liber K., Call, D.J., Markee, T.P., Schmude, K.L., Balcer, M.D., Whiteman, F.W. & Ankley, G.T. (1996). Effects of acid-volatile sulfide on zinc bioavailability and toxicity to benthic macroinvertebrates: A spiked sediment field experiment. Environmental Toxicology and Chemistry, 15(12), 2113–2125.
Liang, L., McNabb, J.A., Paulk, J.M., Gu, B. & McCarthy, J.F. (1993). Kinetics of Fe (II) oxygenation at low partial pressure of oxygen in the presence of natural organic matter. Environmental Science and Technology, 27, 1864–1870.
Ontario Ministry of the Environment. (1993). Guidelines for the protection and management of aquatic sediment quality in Ontario. Toronto: Ministry of the Environment, Water Resources Branch.
Peltier, E.F., Webb, S.M. & Gaillard, J-F. (2003). Zinc and lead sequestration in an impacted wetland. Advances in Environmental Research, 8, 103–122.
Reddy, C.N. & Patrick, W.H. Jr. (1977). Effect of redox potential and pH on the uptake of cadmium and lead by rice plants. Journal of Environmental Quality, 6(3), 259–262.
Simpson, S.L., Rosner, J. & Ellis, J. (2000). Competitive displacement reactions of cadmium, copper, and zinc added to a polluted sulfidic estuarine sediment. Environmental Toxicology and Chemistry, 19(8), 1992–1999.
Sundelin, B. & Eriksson, A.K. (2001). Mobility and bioavailability of trace metals in sulfidic coastal sediments. Environmental Toxicology and Chemistry, 20(4), 748–756.
U.S. Environmental Protection Agency. (1994, June). Methods for assessing the toxicity of sediment-associated contaminants with freshwater invertebrates. EPA/600/R-94/024. Narragansett, RI: Office of Research and Development.
Windham, L., Weis, J.S. & Weis, P. (2004). Metals dynamics of plant litter of Spartina alterniflora and Phragmites australis in metal-contaminated salt marshes. Part I: Patterns of decomposition and metal uptake. Environmental Toxicology and Chemistry, 23, 1520–1528.
*Except where noted, measurements throughout this paper are in metric notation; conversions to U.S. equivalents can be obtained at http://www.onlineconversion.com/length.htm.
Figure 1. Map of Kearny Marsh showing sampling sites and significant landmarks. Sediment and detritus were collected from six sites—3, 7, 9, 10, 18, and 22—in June and October of 2002. Wetland vegetation is marked.
Figure 2. Effect of June sediment and detritus from different sites on growth of chironomids (mg/larva) after ten days. Sediment data are in closed columns; detritus in open columns. Data represent average ± SD, n = 4–6. Asterisks indicate a significant difference between detritus and sediment, p ≤ 0.05. I = initial weight; +C = positive control; –C = negative control.
Figure 3. Effect of October sediment and detritus from different sites on chironomid growth (mg/larva) after ten days. Sediment data are in closed columns; detritus in open columns. Data represent average ± SD; n = 4–6. Asterisks indicate a significant difference between detritus and sediment, p ≤ 0.05. I = initial weight; +C = positive control; –C = negative control.
Figure 4. Comparison of heavy metals in detritus and sediment. The ratios of heavy metals in detritus versus whole sediment (%) are shown for sites 7 and 10 collected in June (closed column) and October (open column). A reference line for equivalent levels of metals in detritus and sediments is provided. The two sites had different levels of TOC, which did not appear to influence detritus-to-sediment ratios overall.
Figure 5. Correlations of sediment or detritus growth in chironomids (mg/larva) with heavy metal parameters. Open squares and dashed lines represent October substrates. Closed triangles and solid lines represent June substrates. Sediment growth is shown on left; detritus growth on right. Correlations were calculated using Pearson two-tailed test. Asterisks indicate statistically significant correlation, p ≤ 0.05.
June October
(mean ± SD)
0.435 ± 0.177ab 0.540 ± 0.000a
+C 76.7 ± 20.7ab
0.613 ± 0.173b 21.7 ± 20.4a 0.502 ± 0.146a
–C 91.7 ± 9.8a
4.406 ± 0.380c 83.3 ± 10.3b 1.980 ± 0.694b
3 88.3 ± 11.7a
1.370 ± 0.162d 88.3 ± 4.1b 1.364 ± 0.147bc
7 46.7 ± 38.2b
1.084 ± 0.434abd 55.0 ± 35.1a 1.197 ± 0.128ab
9 68.3 ± 24.8ab
1.517 ± 0.393d 68.3 ± 16.0b 0.991 ± 0.090ac
10 86.7 ± 10.3a
1.174 ± 0.094bd 75.0 ± 15.2b 0.697 ± 0.150a
18 90.0 ± 7.1a
95.0 ± 8.4a 1.184 ± 0.244d 50.0 ± 36.3a 1.863 ± 0.205b
I = initial weight of representative larvae.
*Control treatments consisted of acid-washed sand plus food with 0.3mM Cd (+C) and without (–C).
Means that share a common letter were not statistically different, n = 5–6, p. ≥ 0.05.
Table 1. Effect of sediments on ten-day survival (%) and growth (mg/larva) of chironomids. Larvae exposed to sediment from different sites and months of collection were unfed. Controls received food.*
0.527 ± 0.000a 0.501 ± 0.040a
+C
NA NA 84.0 ± 25.1 0.609 ± 0.126a
74.0 ± 11.4 5.914 ± 0.504b 91.7 ± 7.5 4.698 ± 0.302b
76.7 ± 15.1 1.406 ± 0.139c 76.7 ± 8.2 0.928 ± 0.146ac
72.0 ± 8.4 1.226 ± 0.141c 90.0 ± 7.1 1.374 ± 0.345cd
75.0 ± 17.3 1.555 ± 0.163c 86.5 ± 5.5 1.573 ± 0.162d
48.3 ± 20.4 0.743 ± 0.154a 64.0 ± 8.9 0.691 ± 0.139a
63.3 ± 38.8 1.272 ± 0.319c 70.0 ± 23.7 0.848 ± 0.245a
74 ± 19.5 1.378 ± 0.323c 75.0 ± 18.7 1.566 ± 1.062ad
Means that share a common letter were not statistically different; n = 4–6, p ≥ 0.05.
NA = Not analyzed.
Table 2. Effect of detritus on chironomid survival (%) and growth (mg/larva) after ten days. Larvae exposed to detritus from different sites and months of collection were unfed. Controls received food.*
Silt+Clay
SEM–AVSa
Jun 1.27 89.3 9.9 23.2 9.0 37.4 -28.4
Oct 0.07 89.1 10.9 44.9 18.5 385.6 -367.1
Jun 1.67 87.2 11.2 32.0 11.7 46.4 -34.7
Oct 1.90 80.4 17.9 43.8 33.8 116.9 -83.1
Jun 0.93 86.7 12.9 77.0 36.8 46.2 -9.3
Oct 3.60 86.2 9.1 78.2 8.8 45.0 -36.2
Oct 0.82 98.3 6.4 83.2 63.4 254.9 -191.5
Jun 0.48 69.5 30.1 11.8 1.7 5.7 -4.0
Oct 1.51 94.0 4.5 7.1 25.4 80.4 -55.0
aSEM, AVS, and SEM–AVS were the average of two replicate analyses. Units were µmol/g.
TOC = % of volatile solids in dried sediments.
SEM = Simultaneous extracted metals (Cd, Cu, Hg, Pb, and Zn).
AVS = Acid volatile sulfides.
Mon = Month collected.
Table 3. Characterization of sediments from June and October collections. Parameters included TOC (%), AVS, SEM–AVS, and grain size (% gravel, sand, silt+clay).
Totala
Jun 3.13 *120 56 22822 0.55 168 31 153 172 435
Oct 5.83 100 *177 35909 1.78 321 68 *385 646 1383
Jun 7.98 *232 *210 32206 *8.32 262 73 *591 671 1792
Oct 5.75 101 *159 21885 *6.97 254 56 *415 447 1190
Jun 8.25 *502 *243 38983 *2.23 407 *97 *661 *955 2468
Oct 9.75 *512 *295 53968 *3.40 542 *93 *777 *1019 2708
Jun 5.32 *182 *153 11701 1.61 183 57 *435 385 1218
Oct 4.87 *128 *137 14819 1.29 386 61 *458 464 1255
Jun 4.27 66 *148 16227 1.22 382 66 *526 428 1240
Oct 4.34 52 *142 14304 0.89 311 55 *497 410 1161
Jun 1.94 16 41 12032 0.21 183 23 61 79 222
Oct 1.53 6 39 9386 0.16 148 22 70 78 218
0.60 26 16 NS 0.20 NS 16.0 31 120
10.00 110 110 NS 2.00 NS 75.0 250 820
aTotal = Includes concentrations for Cd, Cr, Cu, Hg, Ni, Pb, and Zn but not Fe and Mn.
LEL = Lowest Effects Limit based on Ontario Ministry of the Environment guidelines.
SEL = Severe Effects Limit based on Ontario Ministry of the Environment guidelines.
NS = No sediment criterion.
*Metal concentration exceeds SEL.
Table 4. Heavy metal concentrations (mg/kg) in Kearny Marsh sediments.
Jun *18.2 27 *270 15816 0.97 446 40 *256 409 1021
Oct 6.4 40 *219 26474 0.51 297 47 *490 314 1117
Jun *12.2 66 *240 12636 *3.56 136 56 239 771 1389
Oct 6.4 71 *257 41325 *2.18 149 57 *546 409 1349
Jun *22.2 95 *211 19528 0.15 253 50 235 477 1090
Oct 9.1 *233 *205 35481 *2.23 200 62 *321 428 1261
Jun *25.2 37 *187 5677 0.27 194 43 108 567 968
Jun *16.3 9 *223 1896 0.56 89 27 71 394 741
Oct *19.2 50 *278 11209 0.55 220 47 *496 363 1253
Jun 8.8 18 *145 13220 0.84 212 28 49 249 499
Oct 2.3 19 *120 22515 0.08 268 3 136 168 477
0.6 26 16 NS 0.20 NS 16 31 120
10.0 110 110 NS 2.00 NS 75 250 820
aTotal = Includes concentrations for Cd, Cr, Cu, Hg, Ni, Pb, and Zn but not Fe and Mn (mg/kg).
Table 5. Heavy metal concentrations (mg/kg) in Kearny Marsh detritus.
Treat.
%TOC
SEM AVS
DT–MT
FE/MT
SD–SV
Jun 0.452 0.116 0.696 *–0.874 –0.719 0.420 –0.791
SD–GR
Jun –0.102 0.386 –0.348 –0.174 0.282 –0.121 0.290
Oct 0.063 0.494 0.152 0.451 0.421 –0.368 0.439
Oct –0.328 *–0.863 –0.861b *–0.940 –0.586 *0.955 –0.210
DT–SV
Jun 0.380 0.351 0.723
DT–GR
Oct –0.035 0.494	 *0.904
Oct –0.548 *0.847 0.630
*Pearson correlation coefficient was statistically significant; p ≤ 0.05.
SD = sediment toxicity test
DT = detritus toxicity test
SV = survival (%)
GR = growth (mg/larvae)
Treat. = treatment
Mon. = month collected
Silt + Clay = sum of % silt and clay in sediment
DT-MT = metala concentration in detritus (mg/kg)
SD-MT = metala concentration in sediment (mg/kg)
FE/MT = [Fe] divided by [MT]a in test substrate
%TOC divided by [MT]a in sediment
bSite 22 data were not included in correlation; see text for explanation.
Table 6. Correlations of toxicity test endpoints (chironomid survival and growth) with different sediment and detritus parameters; r = Pearson correlation coefficient.

redpajama_set_name: RedPajamaCommonCrawl


I've had the craziest week, hence the lack of blog work. Hurricane Arthur hit our community quite hard and left us with no power for 4 days. Not only no power, but my computer took a hit, as well as our fridge and freezer. Thankfully our home didn't have any major damage on the outside, and my mom has a generator, so other than restless kiddos we didn't have too much to worry about.
This past Thursday I was supposed to join my gals for a popsicle blog hop, but since I had to buy a new computer I had no way to get the images from my camera, and we still have no internet so I'm doing this via cell phone data (I'm going to feel that one later), a few days late, but I'm still happy to share my Watermelon Lemonade Snow Cones and Popsicles.
PC recently came out with a new delicious flavour of sparkling soda 'Watermelon Lemon', it's so yummy I knew i had to try it as a frozen cool treat.
I stupidly filled the molds up to the top with soda and they kinda exploded, still very tasty, but not really the result I was looking for.
Then batch #2 was in the freezer when the power went out from the hurricane and by the time I dared to open the freezer they were getting mighty melty (I might rename these nightmare popsicles). I did manage to snap a few shots before they were entirely ruined, but you can tell they were getting quite juicy!
They still tasted like a cool breeze on a hot day!
After attempt 1 and 2 were nearly a bust, I resorted to what (at the time) I thought was a foolish idea. I took a bowl dumped the remainder of the soda in and popped it in the freezer. When it froze, it was the most delightful slushie/ snow cone. I love me some snow cone!
I just took a tablespoon and scraped across the top and it shaved off into an absolutely delicious snow cone! No high calorie snow cone syrup or ice machine required.
The best part about this watermelon lemonade cool treat is there are no artificial flavours or colors and only 110 calories per serving (250 ml)! My mouth is seriously watering, I need to make more! It was the perfect bribing machine to get the kids to help pick up branches after the storm!
Now I didn't get to join in on the hop, but you'll still want to visit these other blogs, because the frozen treats they are serving up look too yummy not to try!
P.S. I'm rocking my new blog design, what do you think?
SO SORRY you had to suffer the horrors of Hurricane Arthur Virginia, GLAD that you don't have a lot of damage to your home but know that it is a big inconvenience & cost when you lose appliances and go without power too!!!
Thanks for your kind words Tracy, I think were finally getting sorted out after the storm! I'm glad we don't get a lot of hurricanes around here!
Sorry to hear about your computer and appliances. I hope all is well now. These snow cones look delicious! Great idea for the summer!
Mmm. These look delicious! Thanks for sharing with us at Your Designs This Time!
This sounds so summery and cool and delicious. Much more special than just eating some watermelon!
It was so delicious! The kiddos couldn't get enough!


Delancey Street Partners served as the exclusive financial advisor to Biotix, Inc.
Delancey Street Partners is pleased to announce that we served as exclusive financial advisor to Biotix, Inc. ("Biotix" or "the Company"), a leading pipette tip manufacturer, in its sale to Mettler-Toledo International Inc. ("Mettler-Toledo").
Biotix develops and manufactures laboratory consumables and liquid handling solutions for life science, clinical, pharmaceutical, and biotechnology laboratories in the U.S. and internationally. Biotix specializes in pipette tip innovation, enabling the Company to engineer tips that improve accuracy, precision, and ergonomics. The Company offers manual tips (uTIP and xTIP), automation tips (aTIP) for robotic applications, ergonomically designed pipette systems, reagent reservoirs, high-quality microcentrifuge and PCR tubes, as well as a range of plates. Biotix also provides various services from assembly and kitting to custom engineering. Biotix is based in San Diego, California.
METTLER TOLEDO is a global manufacturer and marketer of precision instruments for use in laboratory, industrial and food retailing applications. The Company offers weighing, analytical and inspection solutions along its customers' value chain to help them streamline processes, enhance productivity, reach compliance with regulatory requirements or optimize cost. In addition to a broad product offering, METTLER TOLEDO has one of the largest global sales and service organizations among precision instrument companies and manufacturing presence in Europe, the United States and China. METTLER TOLEDO is headquartered in Greifensee, Switzerland and has its Head Office for USA in Columbus, Ohio.
The transaction was completed September 1, 2017.


Kilauea Volcano, the most active on Hawaii's big island, erupted Thursday, prompting a mandatory evacuation for more than 1,700 local residents. As the eruption took place, those sailing into port on a cruise ship and from the air could see the huge cloud of ash and dust obscuring the beautiful scenery.
Those on the island were warned of a pending eruption as seismic activity increased throughout the week. More than 200 earthquakes rumbled the island since Tuesday, an indicator that the volcano was preparing to pop. Quakes coming one after another left cracks on the roadways as officials urged residents nearby the volcano to get to safety.
Molten rock and ash spewed forth from the mountain peak Thursday afternoon and made its descent into the forests below. Officials warned of extremely poor air quality, including high levels of sulfur dioxide, as the flow moved closer to residential areas.
Volcanoes are just a part of life for those living on the island chain. In fact, they're the primary reason the islands exist to begin with. There are five major volcanoes on the main island, three of which still very much active.
Heavily dependent on tourism, Hawaii is a popular hub for cruise ships. Many cruise lines offer shore excursions where guests explore beaches made from ground volcanic rock and take hiking tours to the craters of dormant and active volcanoes.
The eruption isn't expected to hamper those visiting the island by cruise ship or by air, but it certainly makes for a cool vacation story.


text:
from . import common
# import logging
import time

from proton import Condition
from proton import Message
from proton import symbol

import pyngus

class APITest(common.Test):

    def setup(self, conn1_props=None, conn2_props=None):
        super(APITest, self).setup()
        # logging.getLogger("pyngus").setLevel(logging.DEBUG)
        self.container1 = pyngus.Container("test-container-1")
        self.conn1_handler = common.ConnCallback()
        if conn1_props is None:
            # props = {"x-trace-protocol": True}
            conn1_props = {"x-trace-protocol": False}
        self.conn1 = self.container1.create_connection("conn1",
                                                       self.conn1_handler,
                                                       conn1_props)
        self.conn1.open()

        self.container2 = pyngus.Container("test-container-2")
        self.conn2_handler = common.ConnCallback()
        self.conn2 = self.container2.create_connection("conn2",
                                                       self.conn2_handler,
                                                       conn2_props)
        self.conn2.open()

    def process_connections(self, timestamp=None):
        common.process_connections(self.conn1, self.conn2, timestamp)

    def teardown(self):
        if self.conn1:
            self.conn1.destroy()
        if self.container1:
            self.container1.destroy()
        if self.conn2:
            self.conn2.destroy()
        if self.container2:
            self.container2.destroy()
        super(APITest, self).teardown()

    def _setup_sender_sync(self):
        """Create links, initiated by sender."""
        sl_handler = common.SenderCallback()
        sender = self.conn1.create_sender("src", "tgt", sl_handler)
        sender.user_context = sl_handler
        sender.open()
        self.process_connections()

        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        rl_handler = common.ReceiverCallback()
        receiver = self.conn2.accept_receiver(args.link_handle,
                                              event_handler=rl_handler)
        receiver.user_context = rl_handler
        receiver.open()
        self.process_connections()
        assert receiver.active and rl_handler.active_ct > 0
        assert sender.active and sl_handler.active_ct > 0
        return (sender, receiver)

    def _setup_receiver_sync(self):
        """Create links, initiated by receiver."""
        rl_handler = common.ReceiverCallback()
        receiver = self.conn2.create_receiver("tgt", "src", rl_handler)
        receiver.user_context = rl_handler
        receiver.open()
        self.process_connections()

        assert self.conn1_handler.sender_requested_ct == 1
        args = self.conn1_handler.sender_requested_args[0]
        sl_handler = common.SenderCallback()
        sender = self.conn1.accept_sender(args.link_handle,
                                          event_handler=sl_handler)
        sender.user_context = sl_handler
        sender.open()
        self.process_connections()
        assert sender.active and sl_handler.active_ct > 0
        assert receiver.active and rl_handler.active_ct > 0
        return (sender, receiver)

    def test_create_destroy(self):
        sender = self.conn1.create_sender("source-addr", "target-addr",
                                          name="my-name")
        sender.user_context = "whatever"
        assert sender.name == "my-name"
        assert sender.source_address == "source-addr"
        assert sender.target_address is None

        receiver = self.conn2.create_receiver("target-addr", "source-addr",
                                              name="other-name")
        receiver.user_context = "meh"
        assert receiver.name == "other-name"
        assert receiver.target_address == "target-addr"
        assert receiver.source_address is None
        sender.destroy()
        receiver.destroy()

    def test_send_abort(self):
        sl_handler = common.SenderCallback()
        cb = common.DeliveryCallback()
        sender = self.conn1.create_sender("saddr", "taddr",
                                          sl_handler)
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, None)
        sender.open()
        sender.close()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        rl_handler = common.ReceiverCallback()
        receiver1 = self.conn2.accept_receiver(args.link_handle,
                                               event_handler=rl_handler)
        receiver1.open()
        self.process_connections()
        assert rl_handler.remote_closed_ct
        receiver1.close()
        self.process_connections()
        assert sl_handler.closed_ct
        assert sl_handler.active_ct == 0
        assert cb.count
        assert cb.status == pyngus.SenderLink.ABORTED

    def test_receiver_abort(self):
        rl_handler = common.ReceiverCallback()
        receiver = self.conn1.create_receiver("taddr", "saddr",
                                              rl_handler)
        receiver.add_capacity(1)
        receiver.open()
        receiver.close()
        self.process_connections()
        assert self.conn2_handler.sender_requested_ct == 1
        args = self.conn2_handler.sender_requested_args[0]
        sl_handler = common.SenderCallback()
        sender = self.conn2.accept_sender(args.link_handle,
                                          event_handler=sl_handler)
        sender.open()
        self.process_connections()
        assert sl_handler.remote_closed_ct
        sender.close()
        self.process_connections()
        assert rl_handler.closed_ct
        assert rl_handler.active_ct == 0

    def test_sender_setup_sync(self):
        sender, receiver = self._setup_sender_sync()
        sl_handler = sender.user_context
        rl_handler = receiver.user_context
        sender.close()
        self.process_connections()
        assert sl_handler.closed_ct == 0
        assert rl_handler.remote_closed_ct == 1
        assert rl_handler.remote_closed_error is None
        receiver.close()
        self.process_connections()
        assert sl_handler.closed_ct == 1
        assert sl_handler.remote_closed_ct == 0
        assert rl_handler.closed_ct == 1

    def test_pipeline_close(self):
        sender, receiver = self._setup_sender_sync()
        sl_handler = sender.user_context
        rl_handler = receiver.user_context
        sender.close()
        self.conn1.close()
        self.process_connections()
        receiver.close()
        self.conn2.close()
        self.process_connections()
        assert sl_handler.closed_ct == 1
        assert rl_handler.closed_ct == 1

    def test_sender_close_cond_sync(self):
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        cond = Condition("bad", "hate you",
                         {"yo-mama": "wears army boots"})
        sender.close(cond)
        self.process_connections()
        assert rl_handler.remote_closed_ct == 1
        assert rl_handler.remote_closed_error
        r_cond = rl_handler.remote_closed_error
        assert r_cond.name == "bad"
        assert r_cond.description == "hate you"
        assert r_cond.info.get("yo-mama") == "wears army boots"

    def test_receiver_setup_sync(self):
        sender, receiver = self._setup_receiver_sync()
        sl_handler = sender.user_context
        rl_handler = receiver.user_context
        receiver.close()
        self.process_connections()
        assert sl_handler.remote_closed_ct == 1
        assert sl_handler.remote_closed_error is None
        sender.close()
        self.process_connections()
        assert rl_handler.closed_ct == 1
        assert rl_handler.remote_closed_ct == 0
        assert sl_handler.closed_ct == 1

    def test_receiver_close_cond_sync(self):
        sender, receiver = self._setup_receiver_sync()
        sl_handler = sender.user_context
        cond = Condition("meh", "blah",
                         {"dog": "cat"})
        receiver.close(cond)
        self.process_connections()
        assert sl_handler.remote_closed_ct == 1
        assert sl_handler.remote_closed_error
        r_cond = sl_handler.remote_closed_error
        assert r_cond.name == "meh"
        assert r_cond.description == "blah"
        assert r_cond.info.get("dog") == "cat"

    def test_credit_sync(self):
        sender, receiver = self._setup_sender_sync()
        sl_handler = sender.user_context
        rl_handler = receiver.user_context
        assert receiver.capacity == 0
        receiver.add_capacity(3)
        assert receiver.capacity == 3
        assert sender.credit == 0
        assert sl_handler.credit_granted_ct == 0
        self.process_connections()
        # verify credit is sent to sender:
        assert sender.credit == 3
        assert sl_handler.credit_granted_ct == 1
        receiver.add_capacity(1)
        self.process_connections()
        assert receiver.capacity == 4
        assert sender.credit == 4
        # callback occurs when credit is increased:
        assert sl_handler.credit_granted_ct == 2
        assert sender.pending == 0
        msg = Message()
        msg.body = "Hi"
        sender.send(msg)
        # none pending because credit was consumed
        assert sender.credit == 3
        assert sender.pending == 0
        self.process_connections()
        # verify receiver's capacity decreases on send:
        assert receiver.capacity == 3
        assert rl_handler.message_received_ct == 1
        assert sender.credit == 3
        assert sender.pending == 0
        while sender.credit != 0:
            sender.send(msg)
            self.process_connections()
        assert receiver.capacity == 0
        assert rl_handler.message_received_ct == 4
        # verify no msgs sent if no credit:
        sender.send(msg)
        sender.send(msg)
        self.process_connections()
        assert sender.pending == 2
        assert sl_handler.credit_granted_ct == 2
        receiver.add_capacity(1)
        self.process_connections()
        assert receiver.capacity == 0
        assert rl_handler.message_received_ct == 5
        assert sender.credit == 0
        assert sender.pending == 1
        assert sl_handler.credit_granted_ct == 2

        receiver.add_capacity(1)
        self.process_connections()
        assert sender.credit == 0
        assert sender.pending == 0
        # credit callback not called since pending ate it
        assert sl_handler.credit_granted_ct == 2

        # verify new credit becomes available:
        receiver.add_capacity(1)
        self.process_connections()
        assert sender.credit == 1
        assert sl_handler.credit_granted_ct == 3

    def test_send_presettled(self):
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg)
        receiver.add_capacity(1)
        self.process_connections()
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        assert msg2.body == "Hi"
        receiver.message_accepted(handle)

    def test_send_accepted(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle")
        self.process_connections()
        assert rl_handler.message_received_ct == 0
        receiver.add_capacity(1)
        self.process_connections()
        assert cb.link is None  # not acknowledged yet
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        receiver.message_accepted(handle)
        self.process_connections()
        assert cb.link == sender
        assert cb.handle == "my-handle"
        assert cb.status == pyngus.SenderLink.ACCEPTED

    def test_send_released(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle")
        receiver.add_capacity(1)
        self.process_connections()
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        receiver.message_released(handle)
        self.process_connections()
        assert cb.link == sender
        assert cb.handle == "my-handle"
        assert cb.status == pyngus.SenderLink.RELEASED

    def test_send_rejected(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle")
        receiver.add_capacity(1)
        self.process_connections()
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        cond = Condition("itchy", "Needs scratching",
                         {"bath": True})
        receiver.message_rejected(handle, cond)
        self.process_connections()
        assert cb.link == sender
        assert cb.handle == "my-handle"
        assert cb.status == pyngus.SenderLink.REJECTED
        r_cond = cb.info.get("condition")
        assert r_cond and r_cond.name == "itchy"

    def test_send_modified(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle")
        receiver.add_capacity(1)
        self.process_connections()
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        annotations = {"dog": 1, "cat": False}
        receiver.message_modified(handle, False, True, annotations)
        self.process_connections()
        assert cb.link == sender
        assert cb.handle == "my-handle"
        assert cb.status == pyngus.SenderLink.MODIFIED
        assert cb.info.get("delivery-failed") is False
        assert cb.info.get("undeliverable-here") is True
        info = cb.info.get("message-annotations")
        assert info and info["dog"] == 1

    def test_send_expired_no_credit(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_receiver_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle", deadline=10)
        # receiver.add_capacity(1)
        self.process_connections(timestamp=9)
        assert rl_handler.message_received_ct == 0
        assert sender.pending == 1
        assert cb.status is None
        self.process_connections(timestamp=10)
        assert sender.pending == 0
        assert cb.status == pyngus.SenderLink.TIMED_OUT

    def test_send_expired_late_reply(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        receiver.add_capacity(1)
        self.process_connections(timestamp=1)
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle", deadline=10)
        self.process_connections(timestamp=9)
        assert rl_handler.message_received_ct == 1
        assert sender.pending == 1
        assert sender.credit == 0
        assert cb.status is None
        self.process_connections(timestamp=10)
        assert rl_handler.message_received_ct == 1
        assert sender.pending == 0
        assert cb.status == pyngus.SenderLink.TIMED_OUT
        # late reply:
        assert cb.count == 1
        msg2, handle = rl_handler.received_messages[0]
        receiver.message_accepted(handle)
        self.process_connections(timestamp=15)
        assert cb.count == 1

    def test_send_expired_no_reply(self):
        cb = common.DeliveryCallback()
        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, cb, "my-handle", deadline=10)
        self.process_connections(timestamp=1)
        assert rl_handler.message_received_ct == 0
        assert sender.pending == 1
        assert sender.credit == 0
        assert cb.count == 0
        receiver.add_capacity(1)
        self.process_connections(timestamp=2)
        assert rl_handler.message_received_ct == 1
        assert sender.pending == 1
        assert sender.credit == 0
        assert cb.count == 0
        self.process_connections(timestamp=12)
        assert sender.pending == 0
        assert cb.count == 1
        assert cb.status == pyngus.SenderLink.TIMED_OUT

    def test_send_expired_no_callback(self):
        sender, receiver = self._setup_receiver_sync()
        rl_handler = receiver.user_context
        msg = Message()
        msg.body = "Hi"
        sender.send(msg, deadline=10)
        assert sender.pending == 1
        self.process_connections(timestamp=12)
        assert rl_handler.message_received_ct == 0
        assert sender.pending == 0

    def test_send_deadline_idle(self):
        """Validate the connection's deadline processing."""

        self.teardown()
        self.setup(conn1_props={"idle-time-out": 99})

        sender1 = self.conn1.create_sender("src1", "tgt1")
        sender1.open()
        self.process_connections(timestamp=1)
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        receiver1 = self.conn2.accept_receiver(args.link_handle)
        receiver1.open()

        sender2 = self.conn1.create_sender("src2", "tgt2")
        sender2.open()
        self.process_connections(timestamp=1)
        assert self.conn2_handler.receiver_requested_ct == 2
        args = self.conn2_handler.receiver_requested_args[1]
        receiver2 = self.conn2.accept_receiver(args.link_handle)
        receiver2.open()

        self.process_connections(timestamp=1)
        assert self.conn1.deadline == 100.0

        msg = Message()
        msg.body = "Hi"
        sender1.send(msg, deadline=11)
        assert self.conn1.deadline == 11
        self.process_connections(timestamp=2)
        assert self.conn1.deadline == 11

        sender2.send(msg, deadline=7)
        assert self.conn1.deadline == 7
        self.process_connections(timestamp=7)
        assert self.conn1.deadline == 11
        self.process_connections(timestamp=11)
        assert self.conn1.deadline == 100

        # next send timeout after the idle keepalive:
        sender1.send(msg, deadline=101)
        self.process_connections(timestamp=11)
        assert self.conn1.deadline == 100

        # have remote send idle, next deadline should
        # be the pending send:
        self.process_connections(timestamp=self.conn2.deadline)
        assert self.conn1.deadline == 101

    def test_send_close_on_ack(self):
        """Verify that the sender can close itself when delivery complete."""
        class SendDoneCallback(common.DeliveryCallback):
            def __call__(self, link, handle, status, info):
                super(SendDoneCallback, self).__call__(link, handle,
                                                       status, info)
                if self.count == 1:
                    # verify that we can safely close ourself, even if there is
                    # a send that has not completed:
                    assert status == pyngus.SenderLink.ACCEPTED
                    cond = Condition("indigestion", "old sushi",
                                     {"smoked eel": "yummy"})
                    link.close(cond)
                else:
                    # the unsent message is aborted prior
                    # to invoking closed callback:
                    assert status == pyngus.SenderLink.ABORTED
                    sl_handler = link.user_context
                    assert sl_handler.closed_ct == 0

        sender, receiver = self._setup_sender_sync()
        rl_handler = receiver.user_context
        sl_handler = sender.user_context
        receiver.add_capacity(1)
        msg = Message()
        msg.body = "Hi"
        cb = SendDoneCallback()
        sender.send(msg, cb, "my-handle")
        # no credit - this one won't get sent:
        sender.send(msg, cb, "my-handle")
        self.process_connections()
        assert sender.active
        assert rl_handler.message_received_ct == 1
        msg2, handle = rl_handler.received_messages[0]
        receiver.message_accepted(handle)
        self.process_connections()
        assert not sender.active
        assert not sender.closed
        # pending messages are aborted when close completes:
        assert cb.count == 1
        assert sl_handler.closed_ct == 0
        receiver.close()
        self.process_connections()
        assert sender.closed
        assert sl_handler.closed_ct
        assert cb.count == 2
        # last callback should be abort:
        cond = cb.info.get('condition')
        assert cond
        assert cond.name == "indigestion"
        assert cb.status == pyngus.SenderLink.ABORTED

    def test_multi_frame_message(self):
        """Verify multi-frame message send/receive."""

        self.teardown()
        props = {"max-frame-size": 512}
        self.setup(conn1_props=props, conn2_props=props)

        sender1 = self.conn1.create_sender("src1", "tgt1")
        sender1.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        rl_handler = common.ReceiverCallback()
        receiver1 = self.conn2.accept_receiver(args.link_handle,
                                               event_handler=rl_handler)
        receiver1.add_capacity(1)
        receiver1.open()
        self.process_connections()

        msg = Message()
        msg.body = "Hi!" * 512  # > max frame size
        cb = common.DeliveryCallback()
        sender1.send(msg, cb)
        # manually transfer output from conn1 to conn2 in small batches,
        # forcing conn2 to process a partial delivery:
        self.conn1.process(time.time())
        while self.conn1.has_output:
            count = min(self.conn1.has_output, 512)
            part = self.conn1.output_data()[:count]
            count = self.conn2.process_input(part)
            self.conn2.process(time.time())
            self.conn1.output_written(count)
        assert rl_handler.message_received_ct == 1
        rmsg, handle = rl_handler.received_messages[0]
        assert rmsg.body == msg.body
        receiver1.message_accepted(handle)
        self.process_connections()
        assert cb.count
        assert cb.status == pyngus.SenderLink.ACCEPTED

    def test_dynamic_receiver_props(self):
        """Verify dynamic-node-properties can be requested."""
        # dynamic receive link:
        DELETE_ON_CLOSE = 0x000000000000002b
        desired_props = {symbol("lifetime-policy"): DELETE_ON_CLOSE}
        props = {"dynamic-node-properties": desired_props}
        sender = self.conn1.create_sender("saddr",
                                          target_address=None,
                                          properties=props)
        sender.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        dnp = args.properties.get('dynamic-node-properties')
        assert dnp and dnp == desired_props

        # dynamic send link:
        desired_props = {symbol("supported-dist-modes"):
                         [symbol("move"), symbol("copy")]}
        props = {"dynamic-node-properties": desired_props}
        receiver = self.conn1.create_receiver("taddr",
                                              source_address=None,
                                              properties=props)
        receiver.open()
        self.process_connections()
        assert self.conn2_handler.sender_requested_ct == 1
        args = self.conn2_handler.sender_requested_args[0]
        dnp = args.properties.get('dynamic-node-properties')
        assert dnp and dnp == desired_props

    def test_use_after_free(self):
        """Causes proton library to segfault!!!"""
        if self.PROTON_VERSION < (0, 8):
            raise common.Skipped("Skipping test - causes segfault in proton!")
        sender = self.conn1.create_sender("src1", "tgt1")
        sender.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        assert args.properties.get('snd-settle-mode') is None
        self.conn2.reject_receiver(args.link_handle)
        self.process_connections()
        sender.destroy()

        props = {"snd-settle-mode": "settled"}
        sender = self.conn1.create_sender("src1", "tgt1",
                                          properties=props)
        sender.open()
        self.process_connections()

    def test_settle_modes(self):
        """Verify the configured settlement modes are visible to the peer.
        """
        # defaults (none given)
        sender = self.conn1.create_sender("src1", "tgt1")
        sender.open()
        receiver = self.conn1.create_receiver("tgta", "srca")
        receiver.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 1
        args = self.conn2_handler.receiver_requested_args[0]
        assert args.properties.get('snd-settle-mode') is None
        assert args.properties.get('rcv-settle-mode') is None
        assert self.conn2_handler.sender_requested_ct == 1
        args = self.conn2_handler.sender_requested_args[0]
        assert args.properties.get('snd-settle-mode') is None
        assert args.properties.get('rcv-settle-mode') is None

        # settled
        props = {"snd-settle-mode": "settled",
                 "rcv-settle-mode": "second"}
        sender = self.conn1.create_sender("src2", "tgt2",
                                          properties=props)
        sender.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct == 2
        args = self.conn2_handler.receiver_requested_args[1]
        mode = args.properties.get('snd-settle-mode')
        assert mode and mode == 'settled'
        mode = args.properties.get('rcv-settle-mode')
        assert mode and mode == 'second'

        # unsettled
        props = {"snd-settle-mode": "unsettled",
                 "rcv-settle-mode": "second"}
        recver = self.conn1.create_receiver("tgt3", "src3",
                                            properties=props)
        recver.open()
        self.process_connections()
        assert self.conn2_handler.sender_requested_ct == 2
        args = self.conn2_handler.sender_requested_args[1]
        mode = args.properties.get('snd-settle-mode')
        assert mode and mode == 'unsettled'
        mode = args.properties.get('rcv-settle-mode')
        assert mode and mode == 'second'

    def test_non_reentrant_callback(self):
        class SenderBadCallback(common.SenderCallback):
            def sender_active(self, sender):
                # Illegal:
                sender.destroy()

        class ReceiverBadCallback(common.ReceiverCallback):
            def receiver_active(self, receiver):
                # Illegal:
                receiver.destroy()

        class ReceiverBadCallback2(common.ReceiverCallback):
            def receiver_active(self, receiver):
                # Illegal:
                receiver.connection.destroy()

        sc = SenderBadCallback()
        sender = self.conn1.create_sender("src1", "tgt1",
                                          event_handler=sc)
        sender.open()
        self.process_connections()
        assert self.conn2_handler.receiver_requested_ct
        args = self.conn2_handler.receiver_requested_args[-1]
        receiver = self.conn2.accept_receiver(args.link_handle)
        receiver.open()
        try:
            self.process_connections()
            assert False, "RuntimeError expected!"
        except RuntimeError:
            pass

        sender = self.conn1.create_sender("src2", "tgt2")
        sender.open()
        self.process_connections()
        args = self.conn2_handler.receiver_requested_args[-1]
        rc = ReceiverBadCallback()
        receiver = self.conn2.accept_receiver(args.link_handle,
                                              event_handler=rc)
        receiver.open()
        try:
            self.process_connections()
            assert False, "RuntimeError expected!"
        except RuntimeError:
            pass

        sender = self.conn1.create_sender("src3", "tgt3")
        sender.open()
        self.process_connections()
        args = self.conn2_handler.receiver_requested_args[-1]
        rc = ReceiverBadCallback2()
        receiver = self.conn2.accept_receiver(args.link_handle,
                                              event_handler=rc)
        receiver.open()
        try:
            self.process_connections()
            assert False, "RuntimeError expected!"
        except RuntimeError:
            pass

redpajama_set_name: RedPajamaGithub


text:
Shoot The Chicken.
Posted on March 3, 2018 by geo
The Midweek
Shoot the Chicken February 28, 2018
Audience Development Group
E-Mail Tim
Official marketing partner of ADG and The Midweek Motivator
It's so easy to see our organization's people as homogeneous; one size fits all. They're staff members, associates and in some cases, friends. Equanimity is fine; favoritism can come back to haunt us. But the plain truth lies in accepting a group of people within a company regardless of size when assessed purely through the eyes of competency, your team members cannot possibly be classed as performance equals. To make that mistake can stunt achievement, outlook, and morale.
Occasionally we refer to George Johns, still celebrated as one of the most significant architects of great radio, documented through the history of the legendary Fairbanks group with stations in Indianapolis, Boston, Philadelphia, West Palm and Dallas-Ft. Worth.
Fairbanks' people were instrumental in establishing truly "visual" stations with quality standards still revered but rarely found today. Alumni of the "Fairbanks Way" mentored junior people who in-turn mentored more fortunate members of today's program director ranks engaging the model in today's context.
A couple of years ago Johns shared his remembrance of Fairbanks' leader Jim Hilliard who at one point had grown weary of some grousing from his Indianapolis staff. Within Fairbanks, it was tough to find something to bitch about. Nonetheless, Hilliard chewed some tail with his Indy staff, recounting the timeless story of Chicken Little, who ran around squawking the sky was falling. Hilliard reminded his people, "The story could have ended on page two of the book if the farmer had simply shot the chicken." Hilliard went on to suggest that he was considering just that. A few subsequent memos thereafter were even signed-off with "Shoot the Chicken!"
Given today's disequilibrium, there's lots of stuff to grouse about. We've long used the model of "The Competency Ladder" and it's interesting to note those on the highest rung of the competency ladder typically voice the least sky-is-falling oratory. We describe a person in the top-tier group as a Conscious Competent. Defined, they are priceless and the most capable people in your organization. They know why they're competent and better yet can mentor their skills to associates and peers.
The second strongest tier belongs to the Unconscious Competent. These team members are skilled enough to perform tasks at an above-average level but may lack introspection to know why they're effective or, the insight to pass their skills on to a willing junior staffer. They're not always managerial candidates though a great place to look!
Following that group ranks the Conscious Incompetent. But within these cohorts lies tons of potential that often remains untapped! Fair to say they're not yet developing at a high level, but they know it and with encouragement can be relentless self-improvers within a vault of potential.
Finally, on the bottom rung of the Competency Ladder are the few Unconscious Incompetents…subpar in performance but worse, aren't aware of it! And, occasionally you'll hear them proclaim "the sky is falling."
E-Mail Tim Visit Our Site
About Audience Development Group
When you're in a ratings war it's best to aim high. When you're in a budget war it's best to aim low. Do both with one nationally proven, multiple format consulting partner: one firm, one culture, one travel expense, one consolidated fee. Call us today…before your competition does.
239 513 9234 Naples / 616 940 8309 Grand Rapids
10 thoughts on "Shoot The Chicken."
Tom Snyder on March 7, 2018 at 6:14 am said:
It's amazing that Fairbanks radio is still being held up as the example of radio and management excellence. And it was, I lived through it in Indy but Unfortunately, I was working for the competition. It was tough competing with the excellence of Fairbanks.
geo on March 7, 2018 at 6:35 am said:
One of the greatest compliments a radio guy can receive is when the competition listens to your radio station. Thanks for sharing Tom.
Gary Bachman on March 7, 2018 at 6:28 am said:
Got Lots out of Today.s Blog
Thanks for the read Mr. Bachman.
Jerry Kiefer on March 7, 2018 at 7:39 am said:
And that's the way it was…
Being in radio sure beat working for a living..
Exactly Jerry.
Bob Christy on March 7, 2018 at 7:56 am said:
Tom Cochrun and I were sitting with our wives on the beach in Cambria and the conversation turned to Fred Heckman while Lana and Cakes were discussing their gardens. Fred shared so much of his knowledge with both of us that we could later put to good use. Tom said, things he learned from Fred as a kid in the WIBC newsroom translated seamlessly to his career in TV news. Things Fred taught me about news and writing I was able to pass on and share with some outstanding news people over the years. I remember Ed Bell, the head of the AP in Washington DC saying to me, 'How the hell do you know so much about news?" I told him, Fred Heckman. Eddie smiled and said "Okay then."
geo on March 7, 2018 at 7:13 pm said:
Fred loved news and unlike today had no agenda.
Bruce Walker on March 7, 2018 at 10:06 am said:
Thanks George. I always tell people that you are perfect for radio. It's nice when you find out why you were born.
Bruce, the first thing is figuring out what you wanna do then figure out how to get someone to pay you to do it.
During Thanksgiving I got to spend some time with my family in California and was reminded again of just how...


Well Design Room with Comfortable Mattress, LCD TV, AC, Fridge, Bathroom with Bathtub.
Swimming Pool with Baga River View.
Rs. 12,499 Per Person on Twin Sharing for 3 Night Package with All Meal.
Minimum Payable Amount is Rs. 24,998/- for 2 Person.
LUXURY DELUXE ROOMS: LCD TV & Air Condition, telephone, Bathtub, Fridge (Chargable).
No extra charge for children below the age of 12 on package plans Maximum 2 Person.