docs: function deriveSelectors(selectors) {
    const composedSelectors = {}
    Object.keys(selectors).forEach(key => {
      const selector = selectors[key]
      if(selector instanceof Selector) {
        composedSelectors[key] = (...args) =>
          (composedSelectors[key] = selector.extractFunction(composedSelectors))(...args)
      }
      else {
        composedSelectors[key] = selector
      }
    })
    return composedSelectors
  }