nl_tokens: @typedef { Object } tabOverride . utils~listenersObj
pl_tokens: function createListeners ( handlerList ) { var i , len = handlerList . length , remove , add ; function loop ( func ) { for ( i = 0 ; i < len ; i += 1 ) { func ( handlerList [ i ] . type , handlerList [ i ] . handler ) ; } } // use the standard event handler registration method when available if ( document . addEventListener ) { remove = function ( elem ) { loop ( function ( type , handler ) { elem . removeEventListener ( type , handler , false ) ; } ) ; } ; add = function ( elem ) { // remove listeners before adding them to make sure they are not // added more than once remove ( elem ) ; loop ( function ( type , handler ) { elem . addEventListener ( type , handler , false ) ; } ) ; } ; } else if ( document . attachEvent ) { // support IE 6-8 remove = function ( elem ) { loop ( function ( type , handler ) { elem . detachEvent ( 'on' + type , handler ) ; } ) ; } ; add = function ( elem ) { remove ( elem ) ; loop ( function ( type , handler ) { elem . attachEvent ( 'on' + type , handler ) ; } ) ; } ; } return { add : add , remove : <mask> } ; }