   return res
 _L.html = (els, html, append, show) ->
   rs = []
-  _L.each els, (el) -> 
+  _L.each els, (el) ->
     if typeof html is 'string'
       el.innerHTML = (if append then el.innerHTML else '') + html
     rs.push el.innerHTML

      _L.class el, 'listen_'+action
      el.addEventListener action, (e) -> wfn(e)
_L.show = (els, html, append) ->
  _L.each els, (el) -> 
    if typeof html is 'string'
      el.innerHTML = (if append then el.innerHTML else '') + html
    was = _L.get el, '_l_display'
    was = (if el.tagName is 'DIV' then 'block' else 'inline') if typeof was isnt 'string' or was is 'none' # TODO should be inline in which cases...
    el.style.display = was
_L.hide = (els) ->
  _L.each els, (el) -> 
    if el.style.display isnt 'none'
      _L.set el, '_l_display', el.style.display
    el.style.display = 'none'

  this.data ?= {} # the data obj to send to backend
  this.f ?= {} # the result of the find/ill/permission request to the backend
  this.template ?= _oab[this.plugin + '_template'] # template or css can be passed in or are as defined below

  this.css ?= _oab.css
  this._loading = false # tracks when loads are occurring
  this.submit_after_metadata = false # used by instantill to track if metadata has been provided by user
