, but this code // executes before the first paint, when

ÃÛÌÒapp

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Specificity of Frankia Bacteria in Symbiosis with Native Speckled Alder and Non-Native Autumn Olive | ÃÛÌÒapp

ÃÛÌÒapp

Skip to main content

Specificity of Frankia Bacteria in Symbiosis with Native Speckled Alder and Non-Native Autumn Olive

Andrew DeVries

Autumn olive (Elaeagnus umbellata) is a non-native invasive shrub from Asia that is increasingly problematic in much of the U.S. Midwest. Much of the competitiveness of autumn olive is due to its ability to fix atmospheric nitrogen in nutrient-poor soils. This nitrogen is used to optimize photosynthesis rates allowing autumn olive to grow significantly faster than native shrubs. Autumn olive engages in a symbiotic relationship with Frankia bacteria in root nodules, the location where nitrogen fixation occurs. Previous research has demonstrated that autumn olive is capable of high nitrogen fixation rates. This is surprising because symbiotic relationships among plant and bacterial species are often quite specific. For example, Rhizobium japonicum has been developed specifically for soybean (Glycine max) and seed inoculation is required to optimize nitrogen fixation rates. Frankia also believed to interact with native alder species, notably speckled alder (Alnus incana). The objectives of this research program are to characterize the phylogenetic relationships among the Frankia bacteria responsible for nitrogen fixation in autumn olive and speckled alder in comparison with the nitrogen fixation rates of these plant species.



Funded by

HHMI