Strong Results Lifted CECO Environmental Corp. (CECO) in Q3

Wait 5 sec.

':"";if(a){var r=n.promos.showYahooLogo?"":"yns-no-logo";a=a.replace("{notifOnboardBtnLabel}",n.promos.notifOnboardBtnLabel).replace("{notifOnboardMsg}",n.promos.notifOnboardMsg).replace("{subscriptionTopic}",n.promos.subscriptionTopic).replace("{noLogoClass}",r).replace("{promoLogo}",n.promos.promoLogo)}var s=t.newCount>n.panel.maxCount?t.newCount:"",c=n.panel.notificationCenterPath,l=c?"":R,u=n.panel.headerMsg?"":" "+R,d=c?H:"",p=void 0;t.count?p=t.markup:p='{emptyPanelMsg}'.replace("{emptyPanelMsg}",n.panel.emptyPanelMsg);return e=e.replace("{notifMarkup}",p).replace("{promoMarkup}",a).replace("{hideClass}",l).replace("{notifCenterLink}",c).replace("{paddingClass}",d).replace("{headerMsg}",n.panel.headerMsg).replace("{hideHeaderClass}",u).replace(/{notificationCenterNavMsg}/g,n.panel.notificationCenterNavMsg).replace(/{newCount}/g,s)}},{key:"render",value:function(e,t){var n=this;if(n._panelNode){var o=void 0,i=n._panelNode,a=void 0,r=void 0;switch(e){case"expanded_panel":o='{promoMarkup}{notifMarkup}',r=n._store.getNotifications(),a=n._generatePanelMarkup(o,r),i.innerHTML=a;break;case"error_panel":a=(o='{errorMsg}').replace("{errorMsg}",n._config.panel.errorMsg),i.innerHTML=a}t&&t()}else t&&t(new Error("No panel parent"))}},{key:"createPanelParentNode",value:function(e){e&&(e.innerHTML='',this._panelNode=document.getElementById(P))}},{key:"updateBadgeNode",value:function(e){if(e){var t=this._store.getNotifications().newCount,n=this._config.badge.maxCount;if(t){var o=t>n?n+"+":t;e.innerHTML=o}else e.innerHTML=""}}},{key:"addStyles",value:function(e){if(e&&"undefined"!=typeof window){var t=document.getElementById(this._config.panel.styleTagId);t||((t=document.createElement("style")).type="text/css",t.id=this._config.panel.styleTagId,t.innerText=e,document.head.appendChild(t))}}}]),e}(),j=function(){function e(t,n,o){E(this,e);var i=this;i._store=n,i._view=o,i._config=t;var a=i._config.panel;i._panelParentNode=document.querySelector(a.parentSelector),i._badgeNode=i._config.badge.selector&&document.querySelector(i._config.badge.selector),i._indicatorNode=a.indicatorSelector&&document.querySelector(a.indicatorSelector)}return k(e,[{key:"createPanelParentNode",value:function(){this._view.createPanelParentNode(this._panelParentNode),this._notifPanelNode=document.getElementById(P)}},{key:"refreshPanelNode",value:function(e,t){var n=this;x(n._notifPanelNode,D),n._store.fetchNotifications(e,(function(e,o){var i=window.wafer&&window.wafer.base;i&&i.destroy(n._notifPanelNode),e?n._notifPanelNode.innerHTML||(n._view.render("error_panel"),x(n._notifPanelNode,D)):(n._view.render("expanded_panel"),n._view.updateBadgeNode(n._badgeNode),n._showBadge(),n._showIndicator(),n._view.addStyles(o.css)),N(n._notifPanelNode,D),i&&i.sync(n._notifPanelNode.parentNode),t&&t(e,o)}))}},{key:"resetBadge",value:function(){var e=this;e._store.resetNewCount(),e._view.updateBadgeNode(e._badgeNode),x(e._badgeNode,e._config.badge.hideClass)}},{key:"_showIndicator",value:function(){this._indicatorNode&&(this._store.getNotifications().newCount?x(this._indicatorNode,this._config.panel.indicatorClass):N(this._indicatorNode,this._config.panel.indicatorClass))}},{key:"_showBadge",value:function(){var e=this;e._store.getNotifications().newCount?N(e._badgeNode,e._config.badge.hideClass):x(e._badgeNode,e._config.badge.hideClass)}}]),e}(),Y={promos:{eligibleBodyClass:"display-push-promos",enableNotifOnboard:!0,bypassEligibleClassCheck:!1,notifOnboardBtnLabel:"Notify Me",notifOnboardMsg:"Get alerts for breaking news and top stories",promoLogo:"https://s.yimg.com/cv/apiv2/ae/news/circle_bell.png",showYahooLogo:!0,subscriptionTopic:"gondor_homerun_news"},badge:{hideClass:"",maxCount:5,selector:""},panel:{emptyPanelMsg:"You have no new notifications.",errorMsg:"",headerMsg:"Notifications",imageTag:"img:40x40|2|80",indicatorClass:"yns-indicator",indicatorSelector:null,maxCount:6,notificationCenterNavMsg:"View all {newCount} notifications",notificationCenterPath:"",notificationTypes:"",parentSelector:null,styleTagId:"notificationStyles",theme:"default"},service:{attemptCount:1,attemptDelay:2,url:null,resetUrl:null,isRMP:!1,responseType:"json",timeout:1500}},F={NotificationClient:function(){function e(t){E(this,e);var n=this;n.config=n._parseConfig(t),n._validateRequiredConfigs()&&(n._request=new S(n.config),n._store=new B(n.config,n._request),n._view=new U(n.config,n._store),n._panelController=new j(n.config,n._store,n._view),n._panelController.createPanelParentNode(),n._assignHelperMethods())}return k(e,[{key:"_parseConfig",value:function(e){var t={};for(var n in I(t,Y),t)if(t.hasOwnProperty(n)){var o=t[n],i=e[n];"object"===(void 0===o?"undefined":L(o))?I(o,i):t[n]=e[n]}return t}},{key:"_validateRequiredConfigs",value:function(){var e=this.config;return!(!e.panel.parentSelector||!e.service.url)}},{key:"_assignHelperMethods",value:function(){var e=this;e.helpers={refreshPanelNode:e._panelController.refreshPanelNode.bind(e._panelController),resetBadge:e._panelController.resetBadge.bind(e._panelController),resetIndicator:function(){N(e._panelController._indicatorNode,e.config.panel.indicatorClass)}}}}]),e}()},z="lnct",W=function(){function e(){var e,t;this.personalized=!1,this.ybarElem=document.getElementById("ybar"),this.partnerClasses=null===(t=null===(e=this.ybarElem)||void 0===e?void 0:e.className)||void 0===t?void 0:t.match(/ybar-variant-([a-z]*)/),this.client=new F.NotificationClient(this.getConfig())}return e.prototype.refreshPanel=function(){var e,t,n,o=this,i={lastUpdate:this.getTimeStamp()||this.setTimeStamp(),loadInHpViewer:!0,includePersonalized:this.personalized},a=(null===(e=window.YAHOO)||void 0===e?void 0:e.context)||(null===(t=window.Af)||void 0===t?void 0:t.context)||{};return a.region&&a.lang&&(i.lang=a.lang,i.region=a.region),(null===(n=this.partnerClasses)||void 0===n?void 0:n.length)&&(i.partner=this.partnerClasses[1]),new Promise((function(e,t){o.client.helpers.refreshPanelNode({matrixParams:i},(function(n,o){n&&(l("Notification refresh error:",n),t(n)),e(o)}))}))},e.prototype.resetBadge=function(){this.client.helpers.resetBadge(),this.setTimeStamp()},e.prototype.getConfig=function(){var e,t,n,o,i,a=document.getElementById("notification-container"),r=null===(e=null==a?void 0:a.dataset)||void 0===e?void 0:e.config;if(q&&!r)return q;var s={promos:{eligibleBodyClass:"display-push-promos",enableNotifOnboard:!0},badge:{selector:"#notif-badge",hideClass:"ybar-notification-hidden"},panel:{emptyPanelMsg:"You have no new notifications.",errorMsg:"Please check back later.",headerMsg:"Notifications",maxCount:5,parentSelector:"#ybarNotificationBody",notificationTypes:"breakingNews"},service:{url:"/tdv2_fp/api/resource/NotificationHistory.getHistory",isRMP:!1}},c={};if(r){"att"===(null===(t=this.partnerClasses)||void 0===t?void 0:t[1])&&(s.promos.showYahooLogo=!1);try{var u=JSON.parse(r);c=m({},u),this.personalized=1===u.personalize}catch(e){l("Notifications config parsing error",e)}a&&delete a.dataset.config}return q=this.mergeConfigs(s,c),(null===(n=this.partnerClasses)||void 0===n?void 0:n.length)&&"yahoo"!==(null===(o=this.partnerClasses)||void 0===o?void 0:o[1])&&(null===(i=q.promos)||void 0===i?void 0:i.subscriptionTopic)&&delete q.promos.subscriptionTopic,q},e.prototype.mergeConfigs=function(e,t){var n=m({},e);for(var o in e)n[o]=m(m({},e[o]),t[o]);return n},e.prototype.getTimeStamp=function(){var e;return null===(e=window.localStorage)||void 0===e?void 0:e.getItem(z)},e.prototype.setTimeStamp=function(){var e,t=""+Math.floor((new Date).getTime()/1e3);return null===(e=window.localStorage)||void 0===e||e.setItem(z,t),t},e}(),G=new W,K=function(){return G},J="",V=[],$=function(){},X=function(){window.removeEventListener("beforeunload",X),""!==J&&l("Rapid not found on page",new Error(J))},Z=null,Q=function(){return null===Z&&(Z=document.getElementById("ybar")),Z},ee=function(){var e=0,t=window.YAHOO;if(T)return T;if(t)if(t.i13n)if(t.i13n.__RAPID_INSTANCES__)if(t.i13n.__RAPID_INSTANCES__.length0)for(var n=0;n0){if(T.addModules(i,!1,o),V.length>0)for(e=0;e40959)&&(i19903)&&(i55215))return!1}return!0},ve={navBeaconFired:!1},ye=["ready","navigation"],he=function(){function e(e){var t=this;this.triggerEvent=s,this.addEventListener=c,this.logError=l,this.logPerformance=u,this.getConfig=d,this.getPerformanceMetrics=p,this.rapidRefresh=ne,this.state=m({},ve),this.modules=e,this.userEmail="",window.YBAR&&(ye.forEach((function(e){var n="on".concat(e),o=window.YBAR[n];o&&(t[n]=o)})),window.YBAR.wssid&&(this.wssid=window.YBAR.wssid),window.YBAR.appid&&(this.appid=window.YBAR.appid)),ye.forEach((function(e){var n="on".concat(e);c(e,(function(){for(var o,i=[],a=0;a0){if(o&&i){var n=t>99;o.classList.add("".concat(At)),i.classList.add("count-loaded"),o.textContent=n?"99+":t+"",n?o.classList.add("".concat(Ct)):t>=10&&o.classList.add("".concat(St))}e.onDestroy((function(){o&&(o.textContent="")}))}})).catch((function(){}))}(e,s)}));var Ut="_yb_1e46uhr",jt=function(e,t){var n;t.logoImages&&(n=t.logoImages).length>0&&Array.prototype.forEach.call(n,(function(e){e.onerror=function(){e.onerror=null,e.style.display="none"}})),t.wrapper&&(function(e,t){e&&(xe("#ybar-logo","#ybar-logo",t),t.onDestroy((function(){e.classList.remove("ybar-show-outline"),e.classList.remove("ybar-hide-outline")})))}(t.wrapper,e),function(e,t){t&&e.addElementListener(t,"click",(function(){e.triggerEvent("logo-click")}))}(e,t.wrapper))};ge("ybar-mod-logo",(function(e){var t={wrapper:document.getElementById("ybar-logo"),logoImages:document.querySelectorAll(".".concat(Ut))};jt(e,t)}));var Yt={"dropdown-open":"_yb_1qr55t8","merchant-is-selected":"_yb_hpfgev",overlay:"_yb_1t4opbo","selected-merchant-clear-button":"_yb_sdzekv","shops-buttons":"_yb_1gmhi8h","styled-select":"_yb_1fed2vs",tooltip:"_yb_156j5sr","tooltip--show":"_yb_t94u7s",tooltip__text:"_yb_149d3c6",tooltip__voice:"_yb_rkldcd",tooltip__web:"_yb_1bze76z",dark:"_yb_of9a42",darker:"_yb_1br2rz9",light:"_yb_p0373k","search-border-gradient":"_yb_109k2ga","search-border-gradient-hover":"_yb_vljmzl",midnight60:"_yb_1o792pg","search-input-uh3-hover":"_yb_15ox84z","search-input-uh3-focus-visible":"_yb_1e6541m","sa-btn-bar":"_yb_1axm66t","searchbox-icon-uh3":"_yb_1uef33k",empty:"_yb_owcm9n"},Ft=function(e,t){var n=Math.max(e,t),o=Math.min(e,t),i=Math.abs(n-o);return b([],h(new Array(i+1)),!1).map((function(e,t){return o+t}))},zt=function(e,t,n){var o=e.getConfig().bucketConfig,i=(void 0===o?{}:o).enable_search_ui,a=void 0!==i&&i;if(t.ybar){t.ybar.classList.add("ybar-searchbox-assist-fullscreen"),document.documentElement.classList.add("ybar-overlay"),document.body.classList.add("ybar-overlay-noscroll");te("ybar","websrch","",{elm:"expand",subsec:"searchbox",itc:"1"}),setTimeout((function(){t.searchInput instanceof HTMLInputElement&&(n&&(t.searchInput.value=n),t.searchInput.focus(),a&&window.YAHOO&&window.YAHOO.SA&&window.YAHOO.SA.apps&&window.YAHOO.SA.apps[0]&&window.YAHOO.SA.apps[0].view&&!window.YAHOO.SA.apps[0].view.shown&&window.YAHOO.SA.apps[0].view.show())}))}},Wt=function(e){var t;null===(t=e.ybar)||void 0===t||t.classList.remove("ybar-searchbox-assist-fullscreen"),document.documentElement.classList.remove("ybar-overlay"),document.body.classList.remove("ybar-overlay-noscroll"),e.searchInput instanceof HTMLInputElement&&(e.searchInput.value="",e.searchInput.blur())},Gt=function(e,t){var n=e.getConfig();"smartphone"===n.device&&("finance"===n.property&&"crunch"===n.ytheme&&e.addElementListener(t.searchInput,"click",(function(){var n,o;n="search_input_focus_click",null!==(o=re())&&(oe[n]||(oe[n]=o)),e.addElementListener(t.searchForm,"click",(function(){if(t.ybar){if(t.ybar.classList.contains("ybar-searchbox-assist-fullscreen"))return;t.ybar.classList.add("ybar-searchbox-assist-fullscreen"),t.ybar.classList.add("ybar-searchbox-assist-fadein")}if(!document.documentElement.classList.contains("ybar-overlay")){document.documentElement.classList.toggle("ybar-overlay"),document.body.classList.add("ybar-overlay-noscroll");te("ybar","websrch","",{elm:"expand",subsec:"searchbox",itc:"1"})}}))})),e.addElementListener(t.searchBoxPlaceholder,"click",(function(){zt(e,t)})),e.addElementListener(t.searchBoxPlaceholder,"keydown",(function(n){var o=n,i=o.keyCode,a=o.key,r=Ft(65,90),s=b(b([],h(Ft(58,57)),!1),h(Ft(96,105)),!1),c=b(b([],h(r),!1),h(s),!1).includes(i);(32===i||13===i||c)&&(n.preventDefault(),n.stopPropagation(),zt(e,t,c?a:""))})),t.searchBoxBackButton&&(e.addElementListener(t.searchBoxBackButton,"click",(function(e){e.stopPropagation(),window.YAHOO&&window.YAHOO.SA&&window.YAHOO.SA.apps&&window.YAHOO.SA.apps[0]&&(window.YAHOO.SA.apps[0].view.resetQuery(),window.YAHOO.SA.apps[0].view.hide()),Wt(t);te("ybar","back-close-srch","",{elm:"btn",subsec:"searchbox",itc:"1"})})),e.addElementListener(t.searchInput,"keyup",(function(e){e.stopPropagation();27===e.keyCode&&(e.stopPropagation(),Wt(t))}))),e.addEventListener("viewerClosed",(function(){Wt(t)})),e.onDestroy((function(){Wt(t)})))},Kt=function(){function e(e,t,n){t&&(this.ybar=e,this.elem=t,this.options=n,this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.addEventListeners())}return Object.defineProperty(e.prototype,"tooltip",{get:function(){var e=this;return this.tooltipMarkup||(this.tooltipMarkup=this.createTooltip(),(this.options.tooltipParentElm||this.elem).appendChild(this.tooltipMarkup),this.ybar.onDestroy((function(){var t,n;null===(n=null===(t=e.tooltipMarkup)||void 0===t?void 0:t.parentNode)||void 0===n||n.removeChild(e.tooltipMarkup)}))),this.tooltipMarkup},enumerable:!1,configurable:!0}),e.prototype.show=function(){this.tooltip.classList.add(this.options.showClass)},e.prototype.hide=function(){this.tooltip.classList.remove(this.options.showClass)},e.prototype.addEventListeners=function(){this.ybar.addElementListener(this.elem,"mouseenter",this.show),this.ybar.addElementListener(this.elem,"focus",this.show),this.ybar.addElementListener(this.elem,"mouseleave",this.hide),this.ybar.addElementListener(this.elem,"blur",this.hide)},e.prototype.createTooltip=function(){var e=document.createElement("div");e.className=this.options.containerClass||"";var t=document.createElement("p");return t.textContent=this.options.label,t.className=this.options.textClass||"",e.appendChild(t),e},e}(),Jt={containerClass:Yt.tooltip,textClass:Yt.tooltip__text,showClass:Yt["tooltip--show"]};ge("ybar-mod-searchbox",(function(e){var t,n=e.getConfig(),o={ybar:document.getElementById("ybar"),searchInput:document.getElementById("ybar-sbq"),buttonBar:document.querySelector(".".concat(Yt["sa-btn-bar"])),searchForm:document.getElementById("ybar-sf"),searchBoxIcon:document.querySelector(".".concat(Yt["searchbox-icon-uh3"])),searchBoxPlaceholder:document.getElementById("ybar-smartphone-searchbox-placeholder"),searchBoxBackButton:document.getElementById("ybar-search-back-btn"),shopsButtonsWrap:document.querySelector(".".concat(Yt["shops-buttons"])),categorySelect:document.getElementById("shops-category-select"),selectedMerchantInput:document.getElementById("selected-merchant-input"),selectedMerchantClearButton:document.querySelector(".".concat(Yt["selected-merchant-clear-button"])),submitSearchBtn:document.getElementById("ybar-search"),clearSearchBtn:document.getElementById("ybar-sbq-x"),searchGradientBorder:document.querySelector(".".concat(Yt["search-border-gradient"]))};if(function(e,t){var n,o,i,a=e.getConfig();if(t.ybar&&["desktop","tablet"].includes(a.device)&&(null===(n=a.bucketConfig)||void 0===n?void 0:n.highlight_searchassist)&&(null===(o=a.bucketConfig)||void 0===o?void 0:o.overlay_class)){t.ybar.setAttribute("data-ovrly-bkt",a.bucketConfig.overlay_class),null===(i=t.searchForm)||void 0===i||i.classList.add(Yt[a.bucketConfig.overlay_class]);var r=document.createElement("div");r.classList.add(Yt.overlay,Yt[a.bucketConfig.overlay_class]),document.body.appendChild(r),e.onDestroy((function(){document.body.removeChild(r)})),e.addElementListener(t.searchForm,"focusout",(function(e){if(t.searchForm&&t.searchInput){var n=e.relatedTarget;n&&!t.searchForm.contains(n)&&window.YAHOO.SA&&window.YAHOO.SA.apps&&window.YAHOO.SA.apps[0]&&window.YAHOO.SA.apps[0].view.shown&&window.YAHOO.SA.apps[0].view.hide()}}))}}(e,o),Gt(e,o),o.searchGradientBorder){var i=!1;o.searchInput.addEventListener("keydown",(function(e){var t=e.code,n=e.key,a=t.startsWith("Key"),r=t.startsWith("Digit"),s=/^[!@#$%^&*()_+\-=[\]{};':"\\|,./?`~]$/.test(n);(a||r||s)&&!i&&(o.searchGradientBorder.classList.add("".concat(Yt["search-border-gradient-hover"])),i=!0)})),e.addElementListener(o.searchForm,"mouseover",(function(){i||o.searchGradientBorder.classList.add("".concat(Yt["search-border-gradient-hover"]))})),e.addElementListener(o.searchForm,"mouseout",(function(){i||o.searchGradientBorder.classList.remove("".concat(Yt["search-border-gradient-hover"]))})),e.addElementListener(o.searchInput,"click",(function(){i=!0})),e.addElementListener(o.searchInput,"blur",(function(){o.searchGradientBorder.classList.remove("".concat(Yt["search-border-gradient-hover"]))}))}o.searchForm&&(e.addElementListener(o.searchBoxIcon,"mouseover",(function(){o.searchForm.classList.add("".concat(Yt["search-input-uh3-hover"]))})),e.addElementListener(o.searchBoxIcon,"mouseout",(function(){o.searchForm.classList.remove("".concat(Yt["search-input-uh3-hover"]))})),e.addElementListener(o.buttonBar,"mouseover",(function(){o.searchForm.classList.add("".concat(Yt["search-input-uh3-hover"]))})),e.addElementListener(o.buttonBar,"mouseout",(function(){o.searchForm.classList.remove("".concat(Yt["search-input-uh3-hover"]))})),e.addElementListener(o.searchInput,"keyup",(function(e){"Tab"===e.key&&o.searchForm.classList.add("".concat(Yt["search-input-uh3-focus-visible"])),o.searchInput.classList.toggle("".concat(Yt.empty),""===o.searchInput.value)})),e.addElementListener(o.searchInput,"keydown",(function(){o.searchForm.classList.remove("".concat(Yt["search-input-uh3-focus-visible"]))})),e.addElementListener(o.searchInput,"focusout",(function(){o.searchForm.classList.remove("".concat(Yt["search-input-uh3-focus-visible"]))})),e.addElementListener(o.submitSearchBtn,"click",(function(e){""===o.searchInput.value.trim()&&e.preventDefault()})),e.addElementListener(o.clearSearchBtn,"click",(function(){o.searchInput.classList.add("".concat(Yt.empty))}))),o.submitSearchBtn&&"crunch"===n.ytheme&&new Kt(e,o.submitSearchBtn,m(m({},Jt),{label:null!==(t=n.i18n.root.SEARCH_TOOLTIP_WEB)&&void 0!==t?t:"Search the web",containerClass:"".concat(Yt.tooltip," ").concat(Yt.tooltip__web),tooltipParentElm:o.clearSearchBtn.parentElement}))}));var Vt="_yb_tdk4ba",$t="_yb_hkd17a",Xt="_yb_rtzclf",Zt="_yb_tdbhj6",Qt="_yb_de52ef",en="_yb_9hwrey",tn="_yb_slc8ta",nn="_yb_bf0svp",on="_yb_hjic9z";ge("ybar-mod-adaptivenav",(function(e){var t=document.querySelector("#ybar-l1-more-menu ul"),n={moreDropDown:document.querySelector(".".concat(Vt)),moreBtn:document.querySelector(".".concat($t)),wrap:document.querySelector(".".concat(Zt)),moreSectionTitle:document.querySelectorAll(".".concat(Qt)),editionsCtaBtn:document.querySelector(".".concat(en)),editionsMenu:document.querySelector(".".concat(tn)),closeBtn:document.querySelector(".".concat(nn)),moreMenuDropDownHeight:t?"".concat(t.offsetHeight+48,"px"):"0"};new Ke(e,{adaptiveNavBtn:n.moreBtn,containerElm:n.moreDropDown,innerContainerElm:n.editionsMenu,isAdaptiveNav:!0});var o=!1,i=function(t,n){var o=t.moreDropDown,i=t.moreBtn,a=t.wrap,r={sec:"ybar",slk:"More",elm:"expand",pkgt:"top",subsec:"navrail",itc:"1"};o&&i&&a&&o.classList.contains("".concat(Vt))&&(o.style.height=t.moreMenuDropDownHeight,o.classList.remove("".concat(Vt)),a.classList.add("".concat(Xt)),i.setAttribute("aria-expanded","true"),r.elm="expand",e.triggerEvent("adapnav:more:show",{event:n}),te("ybar",r.slk,"",r))},a=function(e,t){void 0===t&&(t=!1);var n=e.moreDropDown,i=e.moreBtn,a=e.wrap,r={sec:"ybar",slk:"More",elm:"close",pkgt:"top",subsec:"navrail",itc:"1"};n&&i&&a&&(n.classList.contains("".concat(Vt))||(n.classList.add("".concat(Vt)),n.style.height="0",a.classList.remove("".concat(Xt)),i.setAttribute("aria-expanded","false"),o||t||te("ybar",r.slk,"",r)))},r=function(e,t){void 0===t&&(t=!1);var n=e.editionsMenu,o={sec:"ybar",slk:"More",elm:"close",pkgt:"top",subsec:"navrail",itc:"1"};null==n||n.close(),null==n||n.classList.remove("".concat(on)),t||te("ybar",o.slk,"",o)},s=function(){var e;window.innerWidth a"),o=document.querySelector("#ybar-navigation-item-mail > a > span");null!==t&&null!==n&&(new Rt).fetchCount().then((function(t){o&&t>0&&(o.textContent="("+(t>99?"99+":t)+")",e.onDestroy((function(){o.textContent=""})))})).catch((function(){}))},Rn=!1,Hn=-1,Un=function(e,t,n){var o,i,a,r=-1,s=0;if(e.ybarNav&&e.navList){var c=window.getComputedStyle(e.ybarNav),l=parseInt(c.width,10)-parseInt(c.paddingLeft,10)-parseInt(c.paddingRight,10),u=61,d=e.navigationPlacement();if(d)u+=d.getBoundingClientRect().width;if(Sn)u+=Sn.getBoundingClientRect().width;for(var p=window.getComputedStyle(e.navList),f=parseInt(p.gap,10)||0,m=0;mg&&(m!==e.navItems.length-1||s+h>g||e.moreMenuDropdown&&e.moreMenuDropdown.hasChildNodes()&&Hn10?e.moreMenuDropdown.classList.add(e.longListClass):null!==e.moreMenuDropdown&&e.moreMenuDropdown.classList.remove(e.longListClass))}},jn=function(e,t){var n,o=function(e,n){var o;e.classList.contains(t.moreMenuNavItemClass)&&(null===(o=t.moreMenuMainFocusItem)||void 0===o||o.setAttribute("aria-expanded",n))},i=function(){t.isTablet&&(document.body.classList.remove("ybar-nav-open"),document.body.removeEventListener("touchend",u))},a=function(n){var i=n.delegateTarget;i&&i.classList.contains(t.dropdownWrapperClass)&&(i.classList.contains(t.dropdownOpenClass)||(e.triggerEvent("nav:dropdown:show",{event:n}),t.isTablet&&(document.body.classList.add("ybar-nav-open"),document.body.addEventListener("touchend",u)),i.classList.add(t.dropdownOpenClass),o(i,"true")))},r=function(e){var n=e.delegateTarget;if(null==n?void 0:n.classList.contains(t.navigationDropdownListClass)){var a=n.parentElement;a&&!a.contains(e.relatedTarget)&&a.classList.contains(t.dropdownWrapperClass)&&(i(),a.classList.remove(t.dropdownOpenClass),o(a,"false"))}else if(null==n?void 0:n.classList.contains(t.dropdownOpenClass)){if(t.isTablet&&e instanceof FocusEvent)return;var r=e.target;Sn&&(!Sn||Sn.contains(r)&&"focusout"!==e.type)||(i(),n.classList.remove(t.dropdownOpenClass),o(n,"false"))}},s=ze(".".concat(t.dropdownWrapperClass),"focusin",a),c=ze(".".concat(t.dropdownWrapperClass,", .").concat(t.navigationDropdownListClass),"focusout",r),l=document.getElementById("ybar-navigation"),u=function(e){var n=null==e?void 0:e.target;t.isTablet&&e&&e.target&&e.target instanceof HTMLElement&&(e.target.classList.contains(t.dropdownOpenClass)||e.target.closest(".".concat(t.dropdownOpenClass)))||document.body.classList.contains("ybar-nav-open")&&!["svg","path"].includes(n.tagName)&&(null==l||l.querySelectorAll(".".concat(t.dropdownOpenClass)).forEach((function(e){e.classList.remove(t.dropdownOpenClass)})),i())};e.addEventListener("nav:closeOverflowMenu",(function(){u()}));var d=ze(".".concat(t.dropdownWrapperClass),"touchstart",(function(e){if(t.isTablet){var n=e.delegateTarget;n&&n.classList.contains(t.dropdownOpenClass)?r(e):(u(e),a(e))}})),p=null===(n=t.ybarNav)||void 0===n?void 0:n.querySelectorAll(".".concat(qn));null==p||p.forEach((function(t){var n=t.parentNode;n&&null!==document.querySelector(".ybar-ytheme-crunch")&&e.addElementListener(n,"mouseenter",(function(t){e.triggerEvent("nav:dropdown:show",{event:t})}))})),e.onDestroy((function(){var e;d.destroy(),s.destroy(),c.destroy(),b([],h(null===(e=t.ybarNav)||void 0===e?void 0:e.querySelectorAll(".".concat(t.dropdownOpenClass))),!1).forEach((function(e){e.classList.remove(t.dropdownOpenClass);var n=document.activeElement;(function(e,t){var n=!1;if(!e||!t)return n;if("function"==typeof e.contains)n=e.contains(t);else for(var o=t;o;){if(o===e){n=!0;break}o=o.parentElement}return n})(t.ybarNav,n)&&setTimeout((function(){null==n||n.blur()}),1)}))}))},Yn=function(e,t,n,o){for(var i=t||window.location.pathname,a=n||window.location.hostname,r=(o||{}).setParentFocus,s=void 0!==r&&r,c=b([],h(e.topLevelNavLinks),!1),l=null,u=null,d=0;d li"),dropdownClass:t.dropdownWrapperClass,enableMoreMenu:i,moreMenuNavElm:t.moreMenuMainFocusItem,isUserAccountNavigation:!1});!function(e,t){var n,o;b([],h(null===(n=t.ybarNav)||void 0===n?void 0:n.querySelectorAll(".".concat(t.dropdownOpenClass))),!1).forEach((function(e){return e.classList.remove(t.dropdownOpenClass)}));var i=e.getConfig();Sn=(null===(o=i.bucketConfig)||void 0===o?void 0:o.enable_mid_nav_placement)?document.getElementById("ybar-mid-nav-placement"):void 0,"news"===i.property?Cn=-12:(Cn="finance"!==i.property&&"sports"!==i.property&&t.shiftMoreMenuEnabled?-24:-16,"zh-Hant-HK"!==i.locale&&"zh-Hant-TW"!==i.locale||(Cn=-20));var a=t.isTablet?"touchstart":"mouseover",r=ze(".".concat(t.dropdownWrapperClass,", .").concat(t.navigationDropdownListClass),a,(function(n){if(window||document){var o=window.innerWidth||document.documentElement.clientWidth,a=n.delegateTarget;if(a&&-1!=a.className.indexOf(t.dropdownWrapperClass)&&(a=a.querySelector(".".concat(t.navigationDropdownListClass))),a){a.style.removeProperty("left");var r=a.getBoundingClientRect(),s=Math.trunc(r.right),c=parseInt(window.getComputedStyle(a).marginLeft,10)+o-s;if(s>o)return"sports"!==i.property?void(a.style.marginLeft=c+"px"):void(a.style.right="0px");if(parseInt(a.style.marginLeft)0?a.style.removeProperty("margin-left"):a.style.marginLeft=c+"px":(a.style.removeProperty("margin-left"),a.style.marginLeft=Cn+"px"),t.isTablet){var l=a.previousElementSibling;if(Sn&&Sn.contains(a));else if(l){var u=l.getBoundingClientRect(),d=Math.trunc(u.left);a.style.left=d+"px"}}}}else{var p=new Error("Dropdown could not be initialized");e.logError("Error:",p)}}));e.onDestroy((function(){r.destroy()}))}(e,t),Pn(e),e.addElementListener(document,"DOMContentLoaded",(function(){Pn(e)})),jn(e,t);var r=e.getConfig().bucketConfig,s=void 0===r?{}:r,c=s.enableDynamicNavfocus,l=void 0!==c&&c,u=s.enableFuzzyMatching;if(l&&(Rn=void 0!==u&&u,Yn(t)),e.addEventListener("nav:setFocus",(function(e){var n=e.detail,o=void 0===n?{}:n,i=o.hostname,a=void 0===i?window.location.hostname:i,r=o.pathname,s=void 0===r?window.location.pathname:r,c=o.options;Yn(t,s,a,void 0===c?{}:c)})),i){var d=document.createElement("style");d.title="ybar_nav_interim",document.head.appendChild(d);var p=ze("#ybar-nav-more-menu ul a","click",(function(t){e.triggerEvent("navigation",{event:t})}));e.addEventListener("nav:resize",(function(){Un(t,d,a)})),Un(t,d,a);var f=e.getConfig();if("complete"===document.readyState)Fn(e,t,d,a);else{var m="load";("news"===f.property&&("zh-Hant-TW"===f.locale||"zh-Hant-HK"===f.locale)||"finance"===f.property&&"zh-Hant-TW"===f.locale)&&(m="DOMContentLoaded"),e.addElementListener(window,m,(function(){Fn(e,t,d,a)}))}e.addElementListener(window,"resize",(function(){Un(t,d,a)})),e.onDestroy((function(){var e=d.parentNode;null==e||e.removeChild(d),p.destroy()}))}Gn(e,t)},Wn=function(e,t){var n=["zh-Hant-TW","zh-Hant-HK"].includes(e.getConfig().locale);return t.isFuji2&&n},Gn=function(e,t){if(t.isNavHidden){var n=!1;e.addElementListener(document,"DOMContentLoaded",(function(n){t.isNavHidden()&&e.triggerEvent("l2:hide",{event:n})})),e.addElementListener(window,"resize",(function(o){!n&&t.isNavHidden()&&e.triggerEvent("l2:hide",{event:o}),n=t.isNavHidden()}))}},Kn="#ybar-nav-more-menu";ge("ybar-mod-navigation",(function(e){var t,n=e.getConfig(),o={dropdownWrapperClass:xn,isFuji2:null!==document.querySelector(".ybar-ytheme-fuji2")||null!==document.querySelector(".ybar-ytheme-crunch"),isTablet:null!==document.querySelector(".tablet")||"tablet"===n.device||matchMedia("(hover: none)").matches,longListClass:Nn,moreMenuDropdown:document.querySelector("".concat(Kn," ul")),moreMenuNavItem:document.querySelector(Kn),moreMenuNavLinksSelector:"".concat(Kn," ul a"),moreMenuMainFocusItem:document.querySelector("".concat(Kn," > button")),moreMenuNavItemClass:Dn,navigationDropdownItemClass:In,navigationDropdownListClass:qn,navItems:document.querySelectorAll("ul.".concat(Bn," li.").concat(On)),topLevelNavLinks:document.querySelectorAll("li.".concat(On," > a")),navLinks:document.querySelectorAll(".ybar-mod-navigation a"),navList:document.querySelector(".ybar-mod-navigation ul"),shiftMoreMenuEnabled:document.querySelector(".ybar-shift-more-menu"),ybarNav:document.getElementById("ybar-navigation"),ybarNavigationItemClass:On,dropdownOpenClass:An,hasNavPlacement:document.getElementById("ybar-nav-placement"),marginOffset:function(e){var t=window.getComputedStyle(e),o=parseInt(t.marginLeft,10)+parseInt(t.marginRight,10);return"sports"===n.property?parseInt(t.marginRight):"finance"===n.property&&"crunch"===n.ytheme?(o-=1.8)>5?o:5:"crunch"===n.ytheme?o:0},navigationPlacement:function(){return t||(t=document.getElementById("ybar-nav-placement")),t},isNavHidden:function(){var e=!1;return"finance"===n.property&&"crunch"===n.ytheme&&document.documentElement.clientWidth=5||n.initialized?clearInterval(a):(void 0!==n.isNotificationsSupported()&&n.init(),i++)}),100)}return e.prototype.show=function(e){var t;this.initialized&&(this.historyEnabled&&!e||(document.body.classList.add(eo),null===(t=this.a11yMenu)||void 0===t||t.setAttribute("aria-expanded","true"),this.lastSeen=(new Date).getTime()))},e.prototype.hide=function(){var e;this.initialized&&(this.historyEnabled&&document.body.classList.remove(to),document.body.classList.remove(eo),null===(e=this.a11yMenu)||void 0===e||e.setAttribute("aria-expanded","false"))},Object.defineProperty(e.prototype,"lastSeen",{get:function(){return this.state.lastSeen},set:function(e){this.state.lastSeen=e,this.setLocalStorage()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"manuallyClosed",{get:function(){return this.state.manuallyClosed},set:function(e){this.state.manuallyClosed=!!e,this.setLocalStorage()},enumerable:!1,configurable:!0}),e.prototype.init=function(){this.isNotificationsSupported()&&this.isNotificationPermissionDefault()&&(this.historyEnabled||document.body.classList.add(to),this.addEventListeners(),this.initialized=!0,this.hasSeenTooltipIn(this.manuallyClosed?6048e5:Qn)||(document.body.classList.add(to),this.show(!0)))},e.prototype.addEventListeners=function(){var e=this;this.ybar.addElementListener(this.container.getElementsByClassName(no)[0],"click",(function(){e.hide(),e.manuallyClosed=!0}))},e.prototype.isNotificationsSupported=function(){var e;return null===(e=null===window||void 0===window?void 0:window.subscriptionHelperInstance)||void 0===e?void 0:e.checkIsSupportedBrowser()},e.prototype.isNotificationPermissionDefault=function(){var e;return"default"===(null===(e=window.Notification)||void 0===e?void 0:e.permission)},e.prototype.hasSeenTooltipIn=function(e){if(!this.lastSeen)return!1;var t=new Date(this.lastSeen),n=new Date;return t.getTime()+e>n.getTime()},e.prototype.setLocalStorage=function(){var e;null===(e=window.localStorage)||void 0===e||e.setItem(Zn,JSON.stringify(this.state))},e.prototype.getLocalStorage=function(){var e,t,n=null===(e=window.localStorage)||void 0===e?void 0:e.getItem(Zn);if(null===n)return null;try{return JSON.parse(n)}catch(e){return null===(t=window.localStorage)||void 0===t||t.removeItem(Zn),null}},e}(),ao=-1,ro={0:0,1:1,9:9,99:99,150:150},so=function(e,t){var n,o=t.isUH3,i=t.notifMenu,a=t.notifMenuOpener,r=t.notifDropdown,s=t.notifBadge,c=t.notifContainer,l=t.notifLabel;t.tooltipContainer&&(n=new io(e,t.tooltipContainer));var u=K(),d=function(){i&&(i.checked=!1),null==r||r.classList.remove("ybarMenuOpen")},p=function(){var t;e.triggerEvent("close-all-menus"),!!document.querySelector(".display-push-promos .".concat(Jn))||(u.resetBadge(),s&&(o?null===(t=s.parentElement)||void 0===t||t.classList.remove(Vn):s.style.display="none"))},f=function(e){var t,n;0===ao&&(null===(t=null==e?void 0:e.css)||void 0===t?void 0:t.length)&&e.css.length>0&&(ao++,function(e){for(var t=function(e){var t=document.createElement("link");t.rel="stylesheet",t.type="text/css",t.href=e,document.getElementsByTagName("head")[0].appendChild(t)},n=0;n0&&s)if(o){var a,r=(a=e.newCount)>99;s.textContent=r?"99+":a+"",null===(n=s.parentElement)||void 0===n||n.classList.add(Vn)}else s.style.display="block"},m=function(){u.refreshPanel().then(f).then(ne).catch((function(){}))};if(e.addEventListener("close-all-menus",(function(){Ce(c)||d()})),c){m();var v=setInterval((function(){m()}),3e5);e.onDestroy((function(){clearInterval(v)})),o?l&&l.addEventListener("mouseenter",(function(){p(),null==n||n.show()})):c.addEventListener("mouseenter",(function(){p(),null==n||n.show()})),c.addEventListener("mouseleave",(function(){d(),null==n||n.hide()}))}e.addElementListener(i,"click",(function(){te("ybar","notification","",{elm:"btn",elmt:"block"===(null==s?void 0:s.style.display)?"newalert":"",subsec:"notification",itc:"1"})})),a&&Ae(e,a,"ybar","notification",{elm:"expand",subsec:"notifications",itc:"2"}),e.addElementListener(r,"focusin",(function(){i&&(i.checked=!0),null==r||r.classList.add("ybarMenuOpen")})),e.addElementListener(r,"focusout",d),e.addElementListener(t.tooltipContainer,"focusin",(function(){null==n||n.show()})),e.addElementListener(t.tooltipContainer,"focusout",(function(){null==n||n.hide()}));var y=e.getConfig().device,h=document.getElementById("ybar");h&&h.classList.contains("ybar-ytheme-crunch")&&(ao=0);var b=new RegExp("[?&]notifications=1(&|#|$)");"desktop"===y&&i&&b.test(window.location.search)&&(i.checked=!0)};ge("ybar-mod-notification",(function(e){var t={isUH3:"crunch"===e.getConfig().ytheme,notifContainer:document.getElementById("notification-container"),notifBadge:document.getElementById("notif-badge"),notifMenu:document.getElementById("ybarNotificationMenu"),notifMenuOpener:document.querySelector("#ybarNotificationMenu + label"),notifDropdown:document.getElementById("notifDropdownContainer"),tooltipContainer:document.querySelector(".".concat($n)),notifLabel:document.querySelector(".".concat(Xn))};t.notifDropdown&&so(e,t)}))}()}};]]>Soumya EswaranThu, December 25, 2025 at 1:47 PM GMT+1 3 min readLoomis Sayles, an investment management company, released its “Small Cap Value Fund” third-quarter 2025 investor letter. A copy of the letter can be downloaded here. US equities delivered strong results in the third quarter, mainly driven by easing tariff concerns, a pro-growth budget passed by the U.S. Congress, and anticipation of the Federal Reserve’s further rate cuts. The fund returned 6.21% in the quarter compared to 12.60% for the Russell 2000 Value Index. In addition, please check the fund’s top five holdings to know its best picks in 2025.In its third-quarter 2025 investor letter, Loomis Sayles Small Cap Value Fund highlighted stocks such as CECO Environmental Corp. (NASDAQ:CECO). CECO Environmental Corp. (NASDAQ:CECO) is a critical solutions provider in industrial air quality, industrial water treatment, and energy transition solutions. The one-month return for CECO Environmental Corp. (NASDAQ:CECO) was 20.40%, and its shares gained 113.27% over the last 52 weeks. On December 24, 2025, CECO Environmental Corp. (NASDAQ:CECO) stock closed at $62.51 per share, with a market capitalization of $2.228 billion.Loomis Sayles Small Cap Value Fund stated the following regarding CECO Environmental Corp. (NASDAQ:CECO) in its third quarter 2025 investor letter:"CECO Environmental Corp. (NASDAQ:CECO) provides equipment for air, gas and water filtration, as well as ventilation, silencers and scrubbers for industrial applications. The stock was added to the Fund in September of 2023 while the company was off the radar screen of most investors and in the earlier stages of a turnaround implemented by a new management team. Over the past two-years, management has continued to improve the business, both organically and through acquisitions, while key end markets such as energy and power infrastructure have strengthened. During the third quarter, CECO reported strong earnings and a third consecutive quarter of exceptional incoming orders for future delivery. On price strength and a notably higher valuation, we reduced our position size in the quarter at share prices significantly above our original purchase."20 Least Green Cities in the USCECO Environmental Corp. (NASDAQ:CECO) is not on our list of 30 Most Popular Stocks Among Hedge Funds. According to our database, 23 hedge fund portfolios held CECO Environmental Corp. (NASDAQ:CECO) at the end of the third quarter, up from 16 in the previous quarter. While we acknowledge the potential of CECO Environmental Corp. (NASDAQ:CECO) as an investment, we believe certain AI stocks offer greater upside potential and carry less downside risk. If you're looking for an extremely undervalued AI stock that also stands to benefit significantly from Trump-era tariffs and the onshoring trend, see our free report on the best short-term AI stock.Terms and Privacy PolicyPrivacy & Cookie SettingsMore InfoS&P 5006,932.05 +22.26 (+0.32%)Dow 3048,731.16 +288.75 (+0.60%)Nasdaq23,613.31 +51.46 (+0.22%)Russell 20002,548.08 +6.96 (+0.27%)VIX13.47 0.00 (0.00%)Gold4,502.80 -2.90 (-0.06%)Trending tickersBTC-USD Bitcoin USD 87,516.63 +133.06 (+0.15%)ETH-USD Ethereum USD 2,926.54 -8.65 (-0.29%)^GSPC S&P 500 6,932.05 +22.26 (+0.32%)XRP-USD XRP USD 1.86 -0.01 (-0.40%)^IXIC NASDAQ Composite 23,613.31 +51.46 (+0.22%)PortfolioSign in to access your portfolioSign inTop gainersEWTX Edgewise Therapeutics, Inc. 27.29 +5.55 (+25.50%)PSNYW Polestar Automotive Holding UK PLC 7.40 +1.00 (+15.63%)TVTX Travere Therapeutics, Inc. 40.28 +4.92 (+13.91%)PSNY Polestar Automotive Holding UK PLC 17.18 +2.05 (+13.55%)PATH UiPath Inc. 17.16 +1.20 (+7.52%)Top losersASTS AST SpaceMobile, Inc. 78.05 -7.62 (-8.89%)HYMC Hycroft Mining Holding Corporation 24.96 -2.18 (-8.03%)QBTS D-Wave Quantum Inc. 27.52 -1.60 (-5.49%)BETA BETA Technologies, Inc. 30.12 -1.50 (-4.74%)PPTA Perpetua Resources Corp. 26.58 -1.12 (-4.04%)Most activeNVDA NVIDIA Corporation 188.61 -0.60 (-0.32%)PLUG Plug Power Inc. 2.1000 +0.0500 (+2.44%)TSLA Tesla, Inc. 485.40 -0.16 (-0.03%)INTC Intel Corporation 36.16 -0.19 (-0.52%)NKE NIKE, Inc. 60.00 +2.66 (+4.64%)Top economic eventsEarnings eventsMy earnings eventsEarnings events