 			end:          900
 			interval:     50
 
-		for key, value of options
-			opts[key] = value if opts[key]?
-
-		# DOM
-		dom =
+		# DOM elements
+		b.dom =
 			window:   window
-			elements: document.querySelectorAll "[#{opts.attr}]"
+			elements: document.querySelectorAll "[#{b.config.attr}]"
 
 		# Utilities
 		util =

 * Inspired by https://github.com/kumailht/responsive-elements
 * 
 * @copyright Corey Worrell 2014
 * @version   1.0.0
###

(->
	ResponsiveElements = (options) ->
		# Options
		opts =
			attr:         'data-respond'
			widthAttr:    'data-width'
			refreshRate:  50

		# Bind listeners
		bind = ->
			dom.window.addEventListener 'load', respondAll
			dom.window.addEventListener 'resize', debounceRespondAll

		# Unbind listeners
		unbind = ->
			dom.window.removeEventListener 'load', respondAll, false
			dom.window.removeEventListener 'resize', debounceRespondAll, false

		# Respond all elements
		respondAll = (e) ->
			for element in dom.elements
				respond element

		# Respond with a debounce
		debounceRespondAll = util.debounce respondAll, b.config.refreshRate

		# Respond single element
		respond = (element) ->
			params = parseParams (element.getAttribute b.config.attr)

			data = makeData element.offsetWidth, params

			element.setAttribute b.config.widthAttr, (data.join ' ')

		# Make responsive data
		makeData = (width, params) ->
