 
     domain
 
-
-  # Private Methods
-  # ---------------------------------------------------------------------------
-  _Quo = (dom = EMPTY_ARRAY, selector = "") ->
-    dom.__proto__ = _Quo::
-    dom.selector = selector
-    dom
-
   _query = (domain, selector) ->
-    selector = selector.trim()
-
     if CLASS_SELECTOR.test(selector)
       elements = domain.getElementsByClassName selector.replace(".", "")
     else if TAG_SELECTOR.test(selector)

      unless elements then elements = []
    else
      elements = domain.querySelectorAll selector

    if elements.nodeType then [elements] else Array::slice.call(elements)


  _compact = (array) ->
    console.log array, [1..100]
    # array = [1..10]
    # array.filter (x) -> x > 5
    array.filter (i) -> i?
    # array.filter (item) -> item isnt undefined and item isnt null


  # Instance Methods
  _Quo::forEach = [].forEach

  _Quo::indexOf = EMPTY_ARRAY.indexOf

  _Quo::each = (callback) ->
    @forEach (element, index) -> callback.call element, index, element

  # Exports
  # ---------------------------------------------------------------------------
  _Quo:: = $$.fn = {}

  # Instance Methods
  $$.fn.forEach = EMPTY_ARRAY.forEach

  $$.fn.indexOf = EMPTY_ARRAY.indexOf

  $$.fn.each = (callback) ->
    @forEach (element, index) -> callback.call element, index, element

  $$


    else if $$.toType(selector) is "function"
      $$(document).ready selector
    else
      dom = _getDOMObject(selector, children)
      _Quo(dom, selector)


  # ---------------------------------------------------------------------------
  # Static Methods
  # ---------------------------------------------------------------------------
  $$.extend = (target) ->
    Array::slice.call(arguments, 1).forEach (source) ->
    target[key] = source[key] for key of source
