 @return {string} - Final output of numbo.
 ###
 convert = (input, options) ->
-	# Clone userOptions, then override it using options
-	oneTimeOptions = Object.assign({}, userOptions, options)
+	# Clone this.options, then override it using options
+	oneTimeOptions = Object.assign({}, @options, options)
 	oneTimeOptions.lang = parseLang(oneTimeOptions.lang)
 	if oneTimeOptions.lang is false
 		return null

	lang: 'enUS'
	type: 'number'

userOptions = Object.assign({}, defaultOptions)

setOptions = (options) ->
	Object.assign(userOptions, options)
	return userOptions

resetOptions = () ->
	userOptions = Object.assign({}, defaultOptions)
	return userOptions

###
Convert numerical input to a specific language.

Numbo::zhCN = zhCN

Numbo::getDefaultOptions = () -> return defaultOptions
Numbo::getOptions = () -> return @options
Numbo::setOptions = setOptions
Numbo::resetOptions = resetOptions

