> return 'EOF';
@@ -28,24 +27,39 @@ starter
toffee_zone EOF { $$ = ["TOFFEE_ZONE", $1]; return $$;}
;
+
toffee_zone
:
- toffee_code { $$ = [$1]; }
+ toffee_code { $$ = [$1]; }
|
- toffee_code flip_to_coffee toffee_zone { $$ = $3; $3.splice(0,0,$1,$2); }
+ toffee_code flip_to_coffee toffee_zone { $$ = $3; $3.splice(0,0,$1,$2); }
|
- flip_to_coffee toffee_zone { $$ = $2; $2.splice(0,0,$1); }
+ flip_to_coffee toffee_zone { $$ = $2; $2.splice(0,0,$1); }
|
- toffee_code flip_to_toffeecomment toffee_zone { $$ = $3; $3.splice(0,0,$1); }
+ toffee_code flip_to_toffee_comment toffee_zone { $$ = $3; $3.splice(0,0,$1); }
|
- flip_to_toffeecomment toffee_zone { $$ = $2; }
+ flip_to_toffee_comment toffee_zone { $$ = $2; }
|
- { $$ = []; }
+ { $$ = []; }
;
-flip_to_toffeecomment
+flip_to_toffee_comment
:
- START_TOFFEE_COMMENT code END_TOFFEE_COMMENT {}
+ START_TOFFEE_COMMENT toffee_commented_region END_TOFFEE_COMMENT {}
+ ;
+
+toffee_commented_region
+ :
+ toffee_commented_region START_COFFEE
+ |
+ toffee_commented_region END_COFFEE
+ |
+ toffee_commented_region START_TOFFEE
+ |
+ toffee_commented_region END_TOFFEE
+ |
+ toffee_commented_region CODE
+ |
;
flip_to_coffee
@@ -67,8 +81,6 @@ coffee_zone
flip_to_toffee
:
START_TOFFEE toffee_zone END_TOFFEE { $$ = ["TOFFEE_ZONE", $2]; }
- |
- START_INDENTED_TOFFEE toffee_zone END_TOFFEE { $$ = ["INDENTED_TOFFEE_ZONE", $2]; }
;
diff --git a/src/view.coffee b/src/view.coffee
index f7ff125..0f1ea2f 100644
--- a/src/view.coffee
+++ b/src/view.coffee
@@ -3,118 +3,199 @@
{states, TAB_SPACES} = require './consts'
utils = require './utils'
vm = require 'vm'
-try
+util = require 'util'
+try
coffee = require "iced-coffee-script"
catch e
coffee = require "coffee-script"
-minimizeJs = (js) ->
- # uglify doesn't seem to be working right; #TODO: This
- js
-getCommonHeaders = (include_bundle_headers) ->
+spaces = (n) -> (" " for i in [0...n]).join ""
+tabs = (n) -> (spaces(TAB_SPACES) for i in [0...n]).join ""
+
+getCommonHeaders = (tab_level, include_bundle_headers, auto_escape) ->
###
each view will use this, or if they're bundled together,
it'll only be used once.
include_bundle_headers: includes some functions needed for browser use
###
- """
-if not toffee? then toffee = {}
-if not toffee.templates then toffee.templates = {}
-
-toffee.states = #{JSON.stringify states}
-
-toffee.__json = (locals, o) ->
- try
- json = JSON.stringify(o).replace(//g,'\\\\u003E').replace(/&/g,'\\\\u0026')
- catch e
- throw {stack:[], message: "JSONify error (\#{e.message}) on line \#{locals.__toffee.lineno}", toffee_line_base: locals.__toffee.lineno }
- "" + json
-
-toffee.__raw = (locals, o) -> o
-
-toffee.__html = (locals, o) ->
- (""+o).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"')
+ __ = tabs tab_level
-toffee.__escape = (locals, o) ->
- if (not locals.__toffee.autoEscape?) or locals.__toffee.autoEscape
- if o is undefined then return ''
- if o? and (typeof o) is "object" then return locals.json o
- return locals.html o
- return o
-
-#{if include_bundle_headers then getBundleHeaders() else ""}
+ """
+\n
+#{__}if not toffee? then toffee = {}
+#{__}if not toffee.templates then toffee.templates = {}
+
+#{__}toffee.states = #{JSON.stringify states}
+
+#{__}toffee.__json = (locals, o, opts) ->
+#{__} opts or= {}
+#{__} opts.indent or= ""
+#{__} if not o?
+#{__} return "null"
+#{__} else
+#{__} return "" + JSON.stringify(o,null,opts.indent)
+#{__} .replace(//g,'\\\\u003E')
+#{__} .replace(/&/g,'\\\\u0026').replace(/\\u2028/g, '\\\\u2028')
+#{__} .replace(/\\u2029/g, '\\\\u2029')
+#{__} .replace(/\\u200e/g, '\\\\u200e') # LEFT-TO-RIGHT MARK
+#{__} .replace(/\\u200f/g, '\\\\u200f') # RIGHT-TO-LEFT MARK
+#{__} .replace(/\\u202a/g, '\\\\u202a') # LEFT-TO-RIGHT EMBEDDING
+#{__} .replace(/\\u202b/g, '\\\\u202b') # RIGHT-TO-LEFT EMBEDDING
+#{__} .replace(/\\u202c/g, '\\\\u202c') # POP DIRECTIONAL FORMATTING
+#{__} .replace(/\\u202d/g, '\\\\u202d') # LEFT-TO-RIGHT OVERRIDE
+#{__} .replace(/\\u202e/g, '\\\\u202e') # RIGHT-TO-LEFT OVERRIDE
+#{__} .replace(/\\u206a/g, '\\\\u206a') # INHIBIT SYMMETRIC SWAPPING
+#{__} .replace(/\\u206b/g, '\\\\u206b') # ACTIVATE SYMMETRIC SWAPPING
+#{__} .replace(/\\u206c/g, '\\\\u206c') # INHIBIT ARABIC FORM SHAPING
+#{__} .replace(/\\u206d/g, '\\\\u206d') # ACTIVATE ARABIC FORM SHAPING
+#{__} .replace(/\\u206e/g, '\\\\u206e') # NATIONAL DIGIT SHAPES
+#{__} .replace(/\\u206f/g, '\\\\u206f') # NOMINAL DIGIT SHAPES
+#{__} .replace(/\\u2066/g, '\\\\u2066') # LEFT-TO-RIGHT ISOLATE (LRI)
+#{__} .replace(/\\u2067/g, '\\\\u2067') # RIGHT-TO-LEFT ISOLATE (RLI)
+#{__} .replace(/\\u2068/g, '\\\\u2068') # FIRST STRONG ISOLATE (FSI)
+#{__} .replace(/\\u2069/g, '\\\\u2069') # POP DIRECTIONAL ISOLATE (PDI)
+
+
+#{__}toffee.__raw = (locals, o) -> o
+
+#{__}toffee.__html = (locals, o) ->
+#{__} (""+o).replace(/&/g, '&')
+#{__} .replace(//g, '>')
+#{__} .replace(/\"/g, '"')
+#{__} .replace(/\\u200e/g, '') # LEFT-TO-RIGHT MARK
+#{__} .replace(/\\u200f/g, '') # RIGHT-TO-LEFT MARK
+#{__} .replace(/\\u202a/g, '') # LEFT-TO-RIGHT EMBEDDING
+#{__} .replace(/\\u202b/g, '') # RIGHT-TO-LEFT EMBEDDING
+#{__} .replace(/\\u202c/g, '') # POP DIRECTIONAL FORMATTING
+#{__} .replace(/\\u202d/g, '') # LEFT-TO-RIGHT OVERRIDE
+#{__} .replace(/\\u202e/g, '') # RIGHT-TO-LEFT OVERRIDE
+#{__} .replace(/\\u206a/g, '') # INHIBIT SYMMETRIC SWAPPING
+#{__} .replace(/\\u206b/g, '') # ACTIVATE SYMMETRIC SWAPPING
+#{__} .replace(/\\u206c/g, '') # INHIBIT ARABIC FORM SHAPING
+#{__} .replace(/\\u206d/g, '') # ACTIVATE ARABIC FORM SHAPING
+#{__} .replace(/\\u206e/g, '') # NATIONAL DIGIT SHAPES
+#{__} .replace(/\\u206f/g, '') # NOMINAL DIGIT SHAPES
+#{__} .replace(/\\u2066/g, '') # LEFT-TO-RIGHT ISOLATE (LRI)
+#{__} .replace(/\\u2067/g, '') # RIGHT-TO-LEFT ISOLATE (RLI)
+#{__} .replace(/\\u2068/g, '') # FIRST STRONG ISOLATE (FSI)
+#{__} .replace(/\\u2069/g, '') # POP DIRECTIONAL ISOLATE (PDI)
+
+
+#{__}toffee.__escape = (locals, o) ->
+#{__} if locals.__toffee.autoEscape? then ae = locals.__toffee.autoEscape
+#{__} else if #{auto_escape?} then ae = #{auto_escape}
+#{__} else ae = true
+#{__} if ae
+#{__} if o is undefined then return ''
+#{__} if o? and (typeof o) is "object" then return locals.json o
+#{__} return locals.html o
+#{__} return o
+
+#{__}toffee.__augmentLocals = (locals, bundle_path) ->
+#{__} _l = locals
+#{__} _t = _l.__toffee = {out: []}
+#{__} if not _l.print? then _l.print = (o) -> toffee.__print _l, o
+#{__} if not _l.json? then _l.json = (o, opts) -> toffee.__json _l, o, opts
+#{__} if not _l.raw? then _l.raw = (o) -> toffee.__raw _l, o
+#{__} if not _l.html? then _l.html = (o) -> toffee.__html _l, o
+#{__} if not _l.escape? then _l.escape = (o) -> toffee.__escape _l, o
+#{__} if not _l.partial? then _l.partial = (path, vars) -> toffee.__partial toffee.templates["\#{bundle_path}"], _l, path, vars
+#{__} if not _l.snippet? then _l.snippet = (path, vars) -> toffee.__snippet toffee.templates["\#{bundle_path}"], _l, path, vars
+#{__} if not _l.load? then _l.load = (path, vars) -> toffee.__load toffee.templates["\#{bundle_path}"], _l, path, vars
+#{__} _t.print = _l.print
+#{__} _t.json = _l.json
+#{__} _t.raw = _l.raw
+#{__} _t.html = _l.html
+#{__} _t.escape = _l.escape
+#{__} _t.partial = _l.partial
+#{__} _t.snippet = _l.snippet
+#{__} _t.load = _l.load
+
+#{if include_bundle_headers then getBundleHeaders(tab_level) else ""}
"""
-getBundleHeaders = ->
+getBundleHeaders = (tab_level) ->
###
- header stuff
+ header stuff
only needed when compiling to a JS file
###
+ __ = tabs tab_level
"""
-
-toffee.__print = (locals, o) ->
- if locals.__toffee.state is toffee.states.COFFEE
- locals.__toffee.out.push o
- return ''
- else
- return "\#{o}"
-
-toffee.__normalize = (path) ->
- if (not path?) or path is "/"
- return path
- else
- parts = path.split "/"
- np = []
- # make sure path always starts with '/'
- if parts[0]
- np.push ''
- for part in parts
- if part is ".."
- if np.length > 1
- np.pop()
- else
- np.push part
- else
- if part isnt "."
- np.push part
- path = np.join "/"
- if not path then path = "/"
- return path
-
-toffee.__partial = (parent_tmpl, parent_locals, path, vars) ->
- path = toffee.__normalize parent_tmpl.bundlePath + "/../" + path
- return toffee.__inlineInclude path, vars, parent_locals
-
-toffee.__snippet = (parent_tmpl, parent_locals, path, vars) ->
- path = toffee.__normalize parent_tmpl.bundlePath + "/../" + path
- vars = if vars? then vars else {}
- vars.__toffee = vars.__toffee or {}
- vars.__toffee.noInheritance = true
- return toffee.__inlineInclude path, vars, parent_locals
-
-toffee.__inlineInclude = (path, locals, parent_locals) ->
- options = locals or {}
- options.__toffee = options.__toffee or {}
-
- # we need to make a shallow copy of parent variables
- if not options.__toffee.noInheritance
- for k,v of parent_locals when not locals?[k]?
- if not (k in ["print", "partial", "snippet", "layout", "__toffee"])
- options[k] = v
-
- if not toffee.templates[path]
- return "Inline toffee include: Could not find \#{path}"
- else
- return toffee.templates[path].pub options
-
+\n
+#{__}toffee.__print = (locals, o) ->
+#{__} if locals.__toffee.state is toffee.states.COFFEE
+#{__} locals.__toffee.out.push o
+#{__} return ''
+#{__} else
+#{__} return "\#{o}"
+
+#{__}toffee.__normalize = (path) ->
+#{__} if (not path?) or path is "/"
+#{__} return path
+#{__} else
+#{__} parts = path.split "/"
+#{__} np = []
+#{__} # make sure path always starts with '/'
+#{__} if parts[0]
+#{__} np.push ''
+#{__} for part in parts
+#{__} if part is ".."
+#{__} if np.length > 1
+#{__} np.pop()
+#{__} else
+#{__} np.push part
+#{__} else
+#{__} if part isnt "."
+#{__} np.push part
+#{__} path = np.join "/"
+#{__} if not path then path = "/"
+#{__} return path
+
+#{__}toffee.__partial = (parent_tmpl, parent_locals, path, vars) ->
+#{__} path = toffee.__normalize parent_tmpl.bundlePath + "/../" + path
+#{__} return toffee.__inlineInclude path, vars, parent_locals
+
+#{__}toffee.__snippet = (parent_tmpl, parent_locals, path, vars) ->
+#{__} path = toffee.__normalize parent_tmpl.bundlePath + "/../" + path
+#{__} vars = if vars? then vars else {}
+#{__} vars.__toffee = vars.__toffee or {}
+#{__} vars.__toffee.noInheritance = true
+#{__} return toffee.__inlineInclude path, vars, parent_locals
+
+#{__}toffee.__load = (parent_tmpl, parent_locals, path, vars) ->
+#{__} path = toffee.__normalize parent_tmpl.bundlePath + "/../" + path
+#{__} vars = if vars? then vars else {}
+#{__} vars.__toffee = vars.__toffee or {}
+#{__} vars.__toffee.repress = true
+#{__} return toffee.__inlineInclude path, vars, parent_locals
+
+#{__}toffee.__inlineInclude = (path, locals, parent_locals) ->
+#{__} options = locals or {}
+#{__} options.passback = {}
+#{__} options.__toffee = options.__toffee or {}
+#{__}
+#{__} # we need to make a shallow copy of parent variables
+#{__} reserved = {}
+#{__} reserved[k] = true for k in ["passback", "load", "print", "partial", "snippet", "layout", "__toffee", "postProcess"]
+#{__} if not options.__toffee.noInheritance
+#{__} for k,v of parent_locals when not locals?[k]?
+#{__} if not reserved[k]?
+#{__} options[k] = v
+#{__}
+#{__} if not toffee.templates[path]
+#{__} return "Inline toffee include: Could not find \#{path}"
+#{__} else
+#{__} res = toffee.templates[path].pub options
+#{__} for k,v of options.passback
+#{__} parent_locals[k] = v
+#{__} return res
"""
-getCommonHeadersJs = (include_bundle_headers, minimize)->
- ch = getCommonHeaders include_bundle_headers
+getCommonHeadersJs = (include_bundle_headers, auto_escape)->
+ ch = getCommonHeaders 0, include_bundle_headers, auto_escape
js = coffee.compile ch, {bare: true}
- if minimize then js = minimizeJs js
js
class view
@@ -125,37 +206,41 @@ class view
cb: if this is set, compilation will happen async and cb will be executed when it's ready
###
options = options or {}
- @fileName = options.fileName or options.filename or null
- @bundlePath = options.bundlePath or "/" # if to be included inside a bundle, this is the path inside it.
- @browserMode = options.browserMode or false
- @minimize = options.minimize or false # excludes line numbers from coffee ; uses uglify.JS
- @verbose = options.verbose or false
- @prettyPrintErrors = if options.prettyPrintErrors? then options.prettyPrintErrors else true
- @txt = txt
- @tokenObj = null # constructed as needed
- @coffeeScript = null # constructed as needed
- @javaScript = null # constructed as needed
- @scriptObj = null # constructed as needed
- @error = null # if err, instance of toffeeError class
+ @fileName = options.fileName or options.filename or null
+ @bundlePath = options.bundlePath or "/" # if to be included inside a bundle, this is the path inside it.
+ @browserMode = options.browserMode or false
+ @verbose = options.verbose or false
+ @fsError = options.fsError or false # pass true if you could not load the view template and passed in error text
+ @prettyPrintErrors = if options.prettyPrintErrors? then options.prettyPrintErrors else true
+ @prettyLogErrors = if options.prettyLogErrors? then options.prettyLogErrors else false
+ @autoEscape = if options.autoEscape? then options.autoEscape else false
+ @additionalErrorHandler = options.additionalErrorHandler or null
+ @txt = txt
+ @tokenObj = null # constructed as needed
+ @coffeeScript = null # constructed as needed
+ @javaScript = null # constructed as needed
+ @fun = null # constructed as needed
+ @error = null # if err, instance of toffeeError class
if options.cb
- @_prepAsync txt, =>
- options.cb @
+ @_prepAsync txt, options.ctx, (=> options.cb @)
+
- _prepAsync: (txt, cb) ->
+ _prepAsync: (txt, ctx, cb) ->
###
Only once it's fully compiled does it callback.
Defers via setTimeouts in each stage in the compile process
for CPU friendliness. This is a lot prettier with iced-coffee-script.
###
+ ctx = ctx or vm.createContext({})
@_log "Prepping #{if @fileName? then @fileName else 'unknown'} async."
@_toTokenObj()
v = @
setTimeout ->
- v._toCoffee()
+ v.toCoffee()
setTimeout ->
- v._toJavaScript()
+ v.toJavaScript()
setTimeout ->
- v._toScriptObj()
+ v._toFun(ctx)
v._log "Done async prep of #{if v.fileName? then v.fileName else 'unknown'}. Calling back."
cb()
, 0
@@ -173,36 +258,42 @@ class view
###
replaces tabs with spaces in their coffee regions
###
- if obj[0] in ["INDENTED_TOFFEE_ZONE", "TOFFEE_ZONE", "COFFEE_ZONE"]
+ if obj[0] in ["TOFFEE_ZONE", "COFFEE_ZONE"]
@_cleanTabs item for item in obj[1]
else if obj[0] is "COFFEE"
- obj[1] = obj[1].replace /\t/g, @_tabAsSpaces()
+ obj[1] = obj[1].replace /\t/g, tabs 1
- run: (options) ->
+ run: (options, ctx) ->
###
returns [err, str]
###
- script = @_toScriptObj()
+ ctx = ctx or vm.createContext({})
+ fun = @_toFun(ctx)
res = null
if not @error
try
- sandbox = { __toffee_run_input: options }
- script.runInNewContext sandbox
- res = sandbox.__toffee_run_input.__toffee.res
- delete sandbox.__toffee_run_input.__toffee
+ res = fun options
catch e
@error = new toffeeError @, errorTypes.RUNTIME, e
if @error
+ if @prettyLogErrors
+ txt = @error.getPrettyPrintText()
+ for line in txt.split "\n"
+ console.log "toffee err: #{line}"
+ if @additionalErrorHandler
+ @additionalErrorHandler @error.getPrettyPrintText(), @error.getPrettyPrint(), @fileName, options
+
if @prettyPrintErrors
pair = [null, @error.getPrettyPrint()]
else
- pair = [null, @error.getPrettyPrintText()]
+ pair = [@error.e, null]
if @error.errType is errorTypes.RUNTIME
# don't hold onto runtime errors after value returned.
@error = null
else
pair = [null, res]
+
return pair
_toTokenObj: ->
@@ -219,54 +310,56 @@ class view
@tokenObj
- _toScriptObj: ->
- if not @scriptObj?
- txt = @_toJavaScript()
+ _toFun: (ctx) ->
+ if not @fun?
+ txt = @toJavaScript()
if not @error
d = Date.now()
- @scriptObj = vm.createScript txt
+ vm.runInContext(txt, ctx)
+ @fun = ctx['_TMPL_']
@_log "#{@fileName} compiled to scriptObj in #{Date.now()-d}ms"
- @scriptObj
+ @fun
- _toJavaScript: ->
+ toJavaScript: ->
if not @javaScript?
- c = @_toCoffee()
+ c = @toCoffee()
if not @error
d = Date.now()
try
- @javaScript = coffee.compile c, {bare: false}
+ opts = { bare: true }
+ if @browserMode
+ opts.bare = false
+ @javaScript = coffee.compile c, opts
catch e
@error = new toffeeError @, errorTypes.COFFEE_COMPILE, e
- if @minimize and not @error
- d2 = Date.now()
- @javaScript = minimizeJs @javaScript
@_log "#{@fileName} compiled to JavaScript in #{Date.now()-d}ms"
@javaScript
- _toCoffee: ->
+ toCoffee: ->
if not @coffeeScript?
tobj = @_toTokenObj()
if not @error
d = Date.now()
res = @_coffeeHeaders()
try
- res += @_toCoffeeRecurse(tobj, TAB_SPACES, 0)[0]
+ res += @_toCoffeeRecurse(tobj, TAB_SPACES * (1 + @_globalTabLevel()), 0, {})[0]
res += @_coffeeFooters()
@coffeeScript = res
- catch e
+ catch e
+ console.log e
@error # already assigned inside _toCoffeeRecurse
@_log "#{@fileName} compiled to CoffeeScript in #{Date.now()-d}ms"
@coffeeScript
_printLineNo: (n, ind) ->
- if @minimize or (@lastLineNo? and (n is @lastLineNo))
+ if (@lastLineNo? and (n is @lastLineNo))
return ""
else
@lastLineNo = n
- return "\n#{@_space ind}_ln #{n}"
+ return "\n#{spaces ind}_ln #{n}"
_snippetHasEscapeOverride: (str) ->
- for token in ['print',' snippet', 'partial', 'raw', 'html', 'json', '__toffee.raw', '__toffee.html', '__toffee.json', 'JSON.stringify']
+ for token in ['print',' snippet', 'load', 'partial', 'raw', 'html', 'json', '__toffee.raw', '__toffee.html', '__toffee.json']
if str[0...token.length] is token
if (str.length > token.length) and (str[token.length] in [' ','\t','\n','('])
return true
@@ -286,35 +379,32 @@ class view
return false
- _toCoffeeRecurse: (obj, indent_level, indent_baseline) ->
+ _toCoffeeRecurse: (obj, indent_level, indent_baseline, state_carry) ->
# returns [res, indent_baseline_delta]
# indent_level = # of spaces to add to each coffeescript section
- # indent_baseline = # of chars to strip from each line inside {# #}
+ # indent_baseline = # of chars to strip from each line inside {# #}
res = ""
i_delta = 0
switch obj[0]
- when "INDENTED_TOFFEE_ZONE"
- indent_level += TAB_SPACES
- for item in obj[1]
- [s, delta] = @_toCoffeeRecurse item, indent_level, indent_baseline
- res += s
when "TOFFEE_ZONE"
- res += "\n#{@_space indent_level}_ts #{states.TOFFEE}"
+ if state_carry.last_coffee_ends_with_newline is false
+ indent_level += TAB_SPACES
+ res += "\n#{spaces indent_level}_ts #{states.TOFFEE}"
for item in obj[1]
- [s, delta] = @_toCoffeeRecurse item, indent_level, indent_baseline
+ [s, delta] = @_toCoffeeRecurse item, indent_level, indent_baseline, state_carry
res += s
when "COFFEE_ZONE"
- res += "\n#{@_space indent_level}_ts #{states.COFFEE}"
+ res += "\n#{spaces indent_level}_ts #{states.COFFEE}"
zone_baseline = @_getZoneBaseline obj[1]
temp_indent_level = indent_level
for item in obj[1]
- [s, delta] = @_toCoffeeRecurse item, temp_indent_level, zone_baseline
+ [s, delta] = @_toCoffeeRecurse item, temp_indent_level, zone_baseline, state_carry
res += s
temp_indent_level = indent_level + delta
when "TOFFEE"
ind = indent_level
- res += "\n#{@_space ind}_ts #{states.TOFFEE}"
+ res += "\n#{spaces ind}_ts #{states.TOFFEE}"
lineno = obj[2]
try
t_int = utils.interpolateString obj[1]
@@ -326,30 +416,33 @@ class view
if part[0] is "TOKENS"
res += @_printLineNo lineno, ind
interp = part[1].replace /(^[\n \t]+)|([\n \t]+)$/g, ''
+ interp = interp.replace /[\u2028\u2029]/g , '\n'
if @_snippetIsSoloToken interp
chunk = "\#{if #{interp}? then escape #{interp} else ''}"
else if @_snippetHasEscapeOverride interp
chunk = "\#{#{interp}}"
else
chunk = "\#{escape(#{interp})}"
- res += "\n#{@_space ind}_to #{@_quoteStr chunk}"
+ res += "\n#{spaces ind}_to #{@_quoteStr chunk}"
lineno += part[1].split("\n").length - 1
else
- lines = part[1].split "\n"
+ lines = part[1].split /[\n\u2028\u2029]/
for line,i in lines
res += @_printLineNo lineno, ind
lbreak = if i isnt lines.length - 1 then "\n" else ""
chunk = @_escapeForStr "#{line}#{lbreak}"
if chunk.length
- res += "\n#{@_space ind}_to #{@_quoteStr(chunk + lbreak)}"
+ res += "\n#{spaces ind}_to #{@_quoteStr(chunk + lbreak)}"
if i < lines.length - 1 then lineno++
res += @_printLineNo obj[2] + (obj[1].split('\n').length-1), ind
- res += "\n#{@_space ind}_ts #{states.COFFEE}"
+ res += "\n#{spaces ind}_ts #{states.COFFEE}"
when "COFFEE"
c = obj[1]
+ c = c.replace /[\u2028\u2029]/g , '\n'
res += "\n#{@_reindent c, indent_level, indent_baseline}"
i_delta = @_getIndentationDelta c, indent_baseline
- else
+ state_carry.last_coffee_ends_with_newline = @_doesEndWithNewline c
+ else
throw "Bad parsing. #{obj} not handled."
return ["",0]
@@ -375,6 +468,13 @@ class view
if follow.length then res += "+ \'#{follow}\'"
res
+ _doesEndWithNewline: (s) ->
+ parts = s.split "\n"
+ if (parts.length > 1) and parts[parts.length - 1].match /^[\t ]*$/
+ return true
+ else
+ return false
+
_escapeForStr: (s) ->
###
escapes a string so it can make it into coffeescript
@@ -417,17 +517,17 @@ class view
if not baseline? then baseline = @_getIndentationBaseline coffee
if not baseline?
res = 0
- else
+ else
lines = coffee.split "\n"
if lines.length < 1
res = 0
- else
+ else
y = lines[lines.length - 1]
y_l = y.match(/[ ]*/)[0].length
res = y_l - baseline
return res
- _reindent: (coffee, indent_level, indent_baseline) ->
+ _reindent: (coffee, indent_level, indent_baseline) ->
lines = coffee.split '\n'
# strip out any leading whitespace lines
while lines.length and lines[0].match /^[ ]*$/
@@ -435,58 +535,48 @@ class view
return '' unless lines.length
rxx = /^[ ]*/
strip = indent_baseline
- indent = @_space indent_level
+ indent = spaces indent_level
res = ("#{indent}#{line[strip...]}" for line in lines).join "\n"
res
- _space: (indent) -> (" " for i in [0...indent]).join ""
-
- _tabAsSpaces: -> (" " for i in [0...TAB_SPACES]).join ""
+ _globalTabLevel: ->
+ if @browserMode then 0 else 1
- _coffeeHeaders: ->
- ___ = @_tabAsSpaces()
+ _globalTabs: -> tabs @_globalTabLevel()
+ _coffeeHeaders: ->
+ __ = @_globalTabs()
+ ___ = tabs 1 # guaranteed tabs
"""
-#{if @browserMode then '' else getCommonHeaders(false)}
-tmpl = toffee.templates["#{@bundlePath}"] =
- bundlePath: "#{@bundlePath}"
-tmpl.pub = (locals) ->
-#{___}_l = locals
-#{___}_t = _l.__toffee = { out: []}
-#{___}_to = (x) -> locals.__toffee.out.push x
-#{___}_ln = (x) -> locals.__toffee.lineno = x
-#{___}_ts = (x) -> locals.__toffee.state = x
-
-#{___}if not _l.print? then _l.print = (o) -> toffee.__print _l, o
-#{___}if not _l.json? then _l.json = (o) -> toffee.__json _l, o
-#{___}if not _l.raw? then _l.raw = (o) -> toffee.__raw _l, o
-#{___}if not _l.html? then _l.html = (o) -> toffee.__html _l, o
-#{___}if not _l.escape? then _l.escape = (o) -> toffee.__escape _l, o
-#{___}if not _l.partial? then _l.partial = (path, vars) -> toffee.__partial toffee.templates["#{@bundlePath}"], _l, path, vars
-#{___}if not _l.snippet? then _l.snippet = (path, vars) -> toffee.__snippet toffee.templates["#{@bundlePath}"], _l, path, vars
-
-#{___}_t.print = _l.print
-#{___}_t.json = _l.json
-#{___}_t.raw = _l.raw
-#{___}_t.html = _l.html
-#{___}_t.escape = _l.escape
-#{___}_t.partial = _l.partial
-#{___}_t.snippet = _l.snippet
-
-#{___}`with (locals) {`
-#{___}__toffee.out = []
+#{if @browserMode then '' else ('_TMPL_ = (__toffee_run_input) ->' + (getCommonHeaders 1, false, @autoEscape)) }
+#{__}# browser mode = #{@browserMode}
+#{__}tmpl = toffee.templates["#{@bundlePath}"] =
+#{__} bundlePath: "#{@bundlePath}"
+#{__}tmpl.render = tmpl.pub = (__locals) ->
+#{__}#{___}__locals = __locals or {}
+#{__}#{___}__repress = __locals.__toffee?.repress
+#{__}#{___}_to = (x) -> __locals.__toffee.out.push x
+#{__}#{___}_ln = (x) -> __locals.__toffee.lineno = x
+#{__}#{___}_ts = (x) -> __locals.__toffee.state = x
+#{__}#{___}toffee.__augmentLocals __locals, "#{@bundlePath}"
+
+#{__}#{___}`with (__locals) {`
+#{__}#{___}__toffee.out = []
"""
_coffeeFooters: ->
- ___ = @_tabAsSpaces()
+ __ = @_globalTabs()
+ ___ = tabs 1 # guaranteed tabs
"""\n
-#{___}__toffee.res = __toffee.out.join ""
-#{___}return __toffee.res
-#{___}`} /* closing JS 'with' */ `
-# sometimes we want to execute the whole thing in a sandbox
-# and just output results
-if __toffee_run_input?
-#{___}return tmpl.pub __toffee_run_input
+#{__}#{___}__toffee.res = __toffee.out.join ""
+#{__}#{___}if postProcess?
+#{__}#{___}#{___}__toffee.res = postProcess __toffee.res
+#{__}#{___}if (not __repress) then return __toffee.res else return ""
+#{__}`true; } /* closing JS 'with' */ `
+#{__}# sometimes we want to execute the whole thing in a sandbox
+#{__}# and just output results
+#{__}if __toffee_run_input?
+#{__}#{___}return tmpl.pub __toffee_run_input
"""
exports.view = view
diff --git a/test/cases/bad_unicode/input.toffee b/test/cases/bad_unicode/input.toffee
new file mode 100644
index 0000000..f184e18
--- /dev/null
+++ b/test/cases/bad_unicode/input.toffee
@@ -0,0 +1,8 @@
+\u2028:

+\u2029:

+{#
+ u2028 = "
"
+ u2029 = "
"
+#}
+HI 2028: #{"
"}
+HI 2028: #{"
"}
diff --git a/test/cases/bad_unicode/output.toffee b/test/cases/bad_unicode/output.toffee
new file mode 100644
index 0000000..e7f9c21
--- /dev/null
+++ b/test/cases/bad_unicode/output.toffee
@@ -0,0 +1,7 @@
+\u2028:
+
+\u2029:
+
+
+HI 2028:
+HI 2028:
diff --git a/test/cases/comments/input.toffee b/test/cases/comments/input.toffee
index 89cc52b..54655cf 100644
--- a/test/cases/comments/input.toffee
+++ b/test/cases/comments/input.toffee
@@ -17,5 +17,16 @@ Pass 2
###
#}
-Pass 3
-{## Fail ##}{## Fail ##}
\ No newline at end of file
+Pass 3{## Fail ##}{## Fail ##}
+{##
+ Fail
+ #{"Fail"}
+ {#
+ for x in [1...100] {:
+ #{"Fail"}
+ {#
+ print "Fail"
+ #}
+ :}
+ #}
+##}
\ No newline at end of file
diff --git a/test/cases/custom_escape/input.toffee b/test/cases/custom_escape/input.toffee
index d308ca6..6f45042 100644
--- a/test/cases/custom_escape/input.toffee
+++ b/test/cases/custom_escape/input.toffee
@@ -1,31 +1,11 @@
{#
- x = '"Hello world"'
+ x = '"Hello world"'
y = ''
z = 'click&clack'
w = [1, 2, {"place": "The Dreadfort"}]
#}
- default x = #{x}
- default y = #{y}
- default z = #{z}
- default w = #{w}
-
-
- raw x = #{raw x}
- raw y = #{raw y}
- raw z = #{raw z}
- raw w = #{raw w}
-
-
-
-{#
- print " raw printed x = #{x}\n"
- print " raw printed y = #{y}\n"
- print " raw printed z = #{z}\n"
- print " raw printed w = #{w}"
-#}
+ custom x = #{x}
+ custom y = #{y}
+ custom z = #{z}
+ custom w = #{w}
\ No newline at end of file
diff --git a/test/cases/custom_escape/output.toffee b/test/cases/custom_escape/output.toffee
index 73b29fb..008e9a4 100644
--- a/test/cases/custom_escape/output.toffee
+++ b/test/cases/custom_escape/output.toffee
@@ -1,24 +1,6 @@
- default x = ["Hello world"]
- default y = [
]
- default z = [click&clack]
- default w = [1,2,[object Object]]
-
-
- raw x = "Hello world"
- raw y =
- raw z = click&clack
- raw w = 1,2,[object Object]
-
-
-
- raw printed x = "Hello world"
- raw printed y =
- raw printed z = click&clack
- raw printed w = 1,2,[object Object]
+ custom x = Helloworldscriptvarx100script
+ custom y = td
+ custom z = clickclack
+ custom w = 12objectObject
\ No newline at end of file
diff --git a/test/cases/custom_escape/vars.coffee b/test/cases/custom_escape/vars.coffee
new file mode 100644
index 0000000..643dc53
--- /dev/null
+++ b/test/cases/custom_escape/vars.coffee
@@ -0,0 +1,3 @@
+{
+ escape: (s) -> "#{s}".replace /[^a-z0-9]/gi, ''
+}
\ No newline at end of file
diff --git a/test/cases/custom_escape/vars.js b/test/cases/custom_escape/vars.js
deleted file mode 100644
index 61d8a4d..0000000
--- a/test/cases/custom_escape/vars.js
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "escape": function(str) { return "[" + str + "]"; }
-}
\ No newline at end of file
diff --git a/test/cases/escape/input.toffee b/test/cases/escape/input.toffee
index 9d77017..697235e 100644
--- a/test/cases/escape/input.toffee
+++ b/test/cases/escape/input.toffee
@@ -2,14 +2,19 @@
x = '"Hello world"'
y = ' '
z = 'click&clack'
- w = [1, 2, {"place": "The Dreadfort"}]
+ w = [1, 2, {"place": "The Dreadfort", "evil \"code\" ": "italic "}]
+ v = ["\u2028", "\u2029"]
+ dir = ["hi\u{202e}there"] # ltr type things
#}
default x = #{x}
default y = #{y}
default z = #{z}
default w = #{w}
- default r = #{r}
- default w.foo = #{w.foo}
+ default r = #{r}eol
+ default w.foo = #{w.foo}eol
+ default v = #{v}
+ default dir = #{dir}
+ default dir0 = #{dir[0]}
raw x = #{raw x}
@@ -17,11 +22,16 @@
raw z = #{raw z}
raw w = #{raw w}
+
+ w_as_json_stringify=#{JSON.stringify w}
+ w_as_json_stringify_raw=#{raw JSON.stringify w}
+
{#
@@ -36,7 +46,8 @@
print " json printed x = #{ raw raw raw raw json x }\n"
print " json printed y = #{ raw raw raw raw json y }\n"
print " json printed z = #{ raw raw raw raw json z }\n"
- print " json printed w = #{ raw raw raw raw json w }"
+ print " json printed w = #{ raw raw raw raw json w }\n"
+ print " json printed v = #{ raw raw raw raw json v }"
#}
@@ -46,4 +57,4 @@
print " html printed longhand z = #{ __toffee.html z }\n"
print " html printed longhand w = #{ __toffee.html w }"
#}
-
\ No newline at end of file
+
diff --git a/test/cases/escape/output.toffee b/test/cases/escape/output.toffee
index 6fdefe5..7624efa 100644
--- a/test/cases/escape/output.toffee
+++ b/test/cases/escape/output.toffee
@@ -2,9 +2,12 @@
default x = "Hello world"
default y = <hr />
default z = click&clack
- default w = [1,2,{"place":"The Dreadfort"}]
- default r =
- default w.foo =
+ default w = [1,2,{"place":"The Dreadfort","evil \u003Cb\u003E\"code\"\u003C/b\u003E":"\u003Ci\u003Eitalic\u003C/i\u003E"}]
+ default r = eol
+ default w.foo = eol
+ default v = ["\u2028","\u2029"]
+ default dir = ["hi\u202ethere"]
+ default dir0 = hithere
raw x = "Hello world"
@@ -12,11 +15,16 @@
raw z = click&clack
raw w = 1,2,[object Object]
+
+ w_as_json_stringify=[1,2,{"place":"The Dreadfort","evil <b>\"code\"</b>":"<i>italic</i>"}]
+ w_as_json_stringify_raw=[1,2,{"place":"The Dreadfort","evil \"code\" ":"italic "}]
+
raw printed x = "Hello world"
@@ -28,11 +36,12 @@
json printed x = "\"Hello world\""
json printed y = "\u003Chr /\u003E"
json printed z = "click\u0026clack"
- json printed w = [1,2,{"place":"The Dreadfort"}]
+ json printed w = [1,2,{"place":"The Dreadfort","evil \u003Cb\u003E\"code\"\u003C/b\u003E":"\u003Ci\u003Eitalic\u003C/i\u003E"}]
+ json printed v = ["\u2028","\u2029"]
html printed longhand x = "Hello world"
html printed longhand y = <hr />
html printed longhand z = click&clack
html printed longhand w = 1,2,[object Object]
-
\ No newline at end of file
+
diff --git a/test/cases/include_order/input.toffee b/test/cases/include_order/input.toffee
index 663c0be..76d5abf 100644
--- a/test/cases/include_order/input.toffee
+++ b/test/cases/include_order/input.toffee
@@ -1,6 +1,6 @@
{#
say_hi = ->
- -{:hi:}
+ {:hi:}
#}1
2
#{partial "child.toffee", say_hi: say_hi}
diff --git a/test/cases/include_techniques/input.toffee b/test/cases/include_techniques/input.toffee
index 61cb308..63b1a9b 100644
--- a/test/cases/include_techniques/input.toffee
+++ b/test/cases/include_techniques/input.toffee
@@ -2,6 +2,6 @@
#{partial "message.toffee", from: "Max & Sam"}
{#
print partial "message.toffee", from: "Christian"
- -{:#{partial "message.toffee", from: "Jennie"}:}
- print partial "message.toffee", sender: "The enemy"
+ {:#{ partial "message.toffee", from: "Jennie"}:}
+ print partial "message.toffee", sender: "The enemy"
#}
\ No newline at end of file
diff --git a/test/cases/indent_attack/input.toffee b/test/cases/indent_attack/input.toffee
index f63c1bc..d552e88 100644
--- a/test/cases/indent_attack/input.toffee
+++ b/test/cases/indent_attack/input.toffee
@@ -51,21 +51,52 @@
print 'Pass7'
else
print 'Fail'
- {:Fail8:}
- -{:Pass8:}
+ {:Fail8:}
+ {:Pass8:}
#}
{#
- -{:...passed with flying colors.:}
+ {:...passed with flying colors.:}
+#}{##
+{#
+ if true and 10 is 10
+ {:
+ Pass9
+ :}
+ print "Pass10"
+ if 11 is 12
+ print "Fail"
+ if 12 is 13 {:
+ Fail
+ :}
+ else
+ {:
+ Pass11
+ :}
+ else if 11 is 12
+ {:
+ Fail
+ :}
#}
+##}
{#
- x = 10
+ x = 20
if x > 1
- for i in [0...x]
- {: #{i}{#
- if i is 3 {: (my favorite number) :}
+ for i in [12...x]
+ square = 16
+ {:Pass#{i}{#
+ if i is square {:(a perfect square):}
#}:}
#}
+ {#
+ x = 20
+ if x > 1
+ for i in [12...x]
+ square = 16
+ {:Pass#{i}{#
+ if i is square {:(a perfect square):}
+ #}:}
+ #}
\ No newline at end of file
diff --git a/test/cases/indent_attack/output.toffee b/test/cases/indent_attack/output.toffee
index eb0dc63..5da2813 100644
--- a/test/cases/indent_attack/output.toffee
+++ b/test/cases/indent_attack/output.toffee
@@ -11,5 +11,6 @@ Pass7Pass8
...passed with flying colors.
- 0 1 2 3 (my favorite number) 4 5 6 7 8 9
+ Pass12Pass13Pass14Pass15Pass16(a perfect square)Pass17Pass18Pass19
+ Pass20
\ No newline at end of file
diff --git a/test/cases/json_formatting/input.toffee b/test/cases/json_formatting/input.toffee
new file mode 100644
index 0000000..673bead
--- /dev/null
+++ b/test/cases/json_formatting/input.toffee
@@ -0,0 +1,12 @@
+{#
+ x =
+ foo: [1,2,3]
+ bar:
+ car: [4,5,"<\/html",{zar: [6,7,null]}]
+ y = [1,2,"<\/script>\""]
+#}
+#{x}
+#{json x, {indent: ' '}}
+#{json x, {indent: 2}}
+#{json x, {indent: '\t'}}
+#{__toffee.json y, {indent:3}}
diff --git a/test/cases/json_formatting/output.toffee b/test/cases/json_formatting/output.toffee
new file mode 100644
index 0000000..f9e8db4
--- /dev/null
+++ b/test/cases/json_formatting/output.toffee
@@ -0,0 +1,70 @@
+
+{"foo":[1,2,3],"bar":{"car":[4,5,"\u003C/html",{"zar":[6,7,null]}]}}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+[
+ 1,
+ 2,
+ "\u003C/script\u003E\""
+]
diff --git a/test/cases/junk/input.toffee b/test/cases/junk/input.toffee
index 7d402e3..c0420b0 100644
--- a/test/cases/junk/input.toffee
+++ b/test/cases/junk/input.toffee
@@ -2,4 +2,4 @@
supplies = ["broom", "mop", "vacuum"]
#}
{# for supply in supplies {:#{supply} :} #}
-
\ No newline at end of file
+
diff --git a/test/cases/junk/output.toffee b/test/cases/junk/output.toffee
index 5e50d3c..f60f38f 100644
--- a/test/cases/junk/output.toffee
+++ b/test/cases/junk/output.toffee
@@ -1,3 +1,3 @@
\ No newline at end of file
+
diff --git a/test/cases/lambda_fns/input.toffee b/test/cases/lambda_fns/input.toffee
index a3b4087..d827176 100644
--- a/test/cases/lambda_fns/input.toffee
+++ b/test/cases/lambda_fns/input.toffee
@@ -2,9 +2,9 @@
print_it = (msg) -> {:#{msg}:}
print_it_twice = (msg) ->
- -{:#{msg}:}
+ {:#{msg}:}
m = msg
- -{:#{m}:}
+ {:#{m}:}
echo_it = (msg) ->
v = msg
diff --git a/test/cases/passback/const1.toffee b/test/cases/passback/const1.toffee
new file mode 100644
index 0000000..9ade052
--- /dev/null
+++ b/test/cases/passback/const1.toffee
@@ -0,0 +1,7 @@
+{#
+ passback.vx = "vx1"
+ passback.vy = "vy1"
+ passback.x = "oh shit"
+ passback.y = "oh noze"
+#}
+This should output (1).
\ No newline at end of file
diff --git a/test/cases/passback/const2.toffee b/test/cases/passback/const2.toffee
new file mode 100644
index 0000000..d626b3a
--- /dev/null
+++ b/test/cases/passback/const2.toffee
@@ -0,0 +1,6 @@
+{#
+ passback.vz = "vz2"
+ vx = "Should not set."
+ vy = "Should not set."
+#}
+This should not output (2).
\ No newline at end of file
diff --git a/test/cases/passback/const3.toffee b/test/cases/passback/const3.toffee
new file mode 100644
index 0000000..2f9d296
--- /dev/null
+++ b/test/cases/passback/const3.toffee
@@ -0,0 +1,5 @@
+{#
+ passback["vx"] = "vx3"
+ passback["vy"] = "vy3"
+#}
+This should not output (3).
\ No newline at end of file
diff --git a/test/cases/passback/const4.toffee b/test/cases/passback/const4.toffee
new file mode 100644
index 0000000..fe80dcb
--- /dev/null
+++ b/test/cases/passback/const4.toffee
@@ -0,0 +1,6 @@
+{#
+ passback.vx = "vx4"
+ passback.vy = "vy4"
+ partial "./const4_sub.toffee"
+#}
+This should not output (4).
\ No newline at end of file
diff --git a/test/cases/passback/const4_sub.toffee b/test/cases/passback/const4_sub.toffee
new file mode 100644
index 0000000..515a618
--- /dev/null
+++ b/test/cases/passback/const4_sub.toffee
@@ -0,0 +1,5 @@
+{#
+ passback.vx = "vx4_sub"
+ passback.vy = "vy4_sub"
+#}
+This should not output (4_sub).
\ No newline at end of file
diff --git a/test/cases/passback/const5.toffee b/test/cases/passback/const5.toffee
new file mode 100644
index 0000000..549fc16
--- /dev/null
+++ b/test/cases/passback/const5.toffee
@@ -0,0 +1,8 @@
+{#
+ passback.vx = "vx5"
+ passback.vy = "vy5"
+ print load "./const5_sub.toffee"
+ passback.vx = vx
+ passback.vy = vy
+#}
+This should not output (5).
\ No newline at end of file
diff --git a/test/cases/passback/const5_sub.toffee b/test/cases/passback/const5_sub.toffee
new file mode 100644
index 0000000..b3453f2
--- /dev/null
+++ b/test/cases/passback/const5_sub.toffee
@@ -0,0 +1,5 @@
+{#
+ passback.vx = "vx5_sub"
+ passback.vy = "vy5_sub"
+#}
+This should not output (5_sub).
\ No newline at end of file
diff --git a/test/cases/passback/input.toffee b/test/cases/passback/input.toffee
new file mode 100644
index 0000000..03104e0
--- /dev/null
+++ b/test/cases/passback/input.toffee
@@ -0,0 +1,11 @@
+vx,vy,vz = #{vx},#{vy},#{vz}
+#{partial "./const1.toffee"}
+vx,vy,vz = #{vx},#{vy},#{vz}
+#{load "./const2.toffee"}
+vx,vy,vz = #{vx},#{vy},#{vz}
+#{load "./const3.toffee"}
+vx,vy,vz = #{vx},#{vy},#{vz}
+#{load "./const4.toffee"}
+vx,vy,vz = #{vx},#{vy},#{vz}
+#{load "./const5.toffee"}
+vx,vy,vz = #{vx},#{vy},#{vz}
\ No newline at end of file
diff --git a/test/cases/passback/output.toffee b/test/cases/passback/output.toffee
new file mode 100644
index 0000000..72bfdc2
--- /dev/null
+++ b/test/cases/passback/output.toffee
@@ -0,0 +1,12 @@
+vx,vy,vz = vx0,,
+
+This should output (1).
+vx,vy,vz = vx1,vy1,
+
+vx,vy,vz = vx1,vy1,vz2
+
+vx,vy,vz = vx3,vy3,vz2
+
+vx,vy,vz = vx4,vy4,vz2
+
+vx,vy,vz = vx5_sub,vy5_sub,vz2
\ No newline at end of file
diff --git a/test/cases/passback/vars.js b/test/cases/passback/vars.js
new file mode 100644
index 0000000..254c8e7
--- /dev/null
+++ b/test/cases/passback/vars.js
@@ -0,0 +1,4 @@
+{
+ "vx": "vx0",
+ "x" : "hi"
+}
\ No newline at end of file
diff --git a/test/cases/post_process/buncha_junk.toffee b/test/cases/post_process/buncha_junk.toffee
new file mode 100644
index 0000000..e1bf4dc
--- /dev/null
+++ b/test/cases/post_process/buncha_junk.toffee
@@ -0,0 +1 @@
+T3246h354is345-i3245s345-534a534-h534i543d534d534e534n543-m534e543s543s543ag5e534.543
\ No newline at end of file
diff --git a/test/cases/post_process/input.toffee b/test/cases/post_process/input.toffee
new file mode 100644
index 0000000..4e0f3e0
--- /dev/null
+++ b/test/cases/post_process/input.toffee
@@ -0,0 +1,7 @@
+#{greeting}, world.
+#{partial './signature.toffee'}
+{#
+ reverse = (s) -> (c for c in s by -1).join ""
+ clean = (s) -> (c for c in s when c.match /[a-z\-]/gi).join ""
+#}
+#{partial './buncha_junk.toffee', {postProcess: (s) -> reverse(clean(s))}}
\ No newline at end of file
diff --git a/test/cases/post_process/output.toffee b/test/cases/post_process/output.toffee
new file mode 100644
index 0000000..7549b0b
--- /dev/null
+++ b/test/cases/post_process/output.toffee
@@ -0,0 +1,4 @@
+This-is-a-hidden-message
+
+.dlrow leurc ,eybdooG
+ .dlrow ,olleH
\ No newline at end of file
diff --git a/test/cases/post_process/signature.toffee b/test/cases/post_process/signature.toffee
new file mode 100644
index 0000000..89c169c
--- /dev/null
+++ b/test/cases/post_process/signature.toffee
@@ -0,0 +1 @@
+Goodbye, cruel world.
\ No newline at end of file
diff --git a/test/cases/post_process/vars.coffee b/test/cases/post_process/vars.coffee
new file mode 100644
index 0000000..d572995
--- /dev/null
+++ b/test/cases/post_process/vars.coffee
@@ -0,0 +1,4 @@
+{
+ greeting: 'Hello'
+ postProcess: (s) -> (c for c in s by -1).join ''
+}
\ No newline at end of file
diff --git a/test/cases/render_no_args/input.toffee b/test/cases/render_no_args/input.toffee
new file mode 100644
index 0000000..951084a
--- /dev/null
+++ b/test/cases/render_no_args/input.toffee
@@ -0,0 +1 @@
+No arguments passed.
\ No newline at end of file
diff --git a/test/cases/render_no_args/output.toffee b/test/cases/render_no_args/output.toffee
new file mode 100644
index 0000000..951084a
--- /dev/null
+++ b/test/cases/render_no_args/output.toffee
@@ -0,0 +1 @@
+No arguments passed.
\ No newline at end of file
diff --git a/test/cases/special_cases/input.toffee b/test/cases/special_cases/input.toffee
index 429d51c..563d8a2 100644
--- a/test/cases/special_cases/input.toffee
+++ b/test/cases/special_cases/input.toffee
@@ -4,7 +4,7 @@
##}
{#
- -{:"PASSED":}
+ {:"PASSED":}
#}
{##
diff --git a/test/express3/app.coffee b/test/express3/app.coffee
deleted file mode 100644
index c78a41d..0000000
--- a/test/express3/app.coffee
+++ /dev/null
@@ -1,31 +0,0 @@
-
-express = require 'express'
-routes = require './routes'
-http = require 'http'
-toffee = require 'toffee'
-
-app = express()
-
-
-app.configure ->
-
- toffee.expressEngine.verbose = true
- #toffee.expressEngine.prettyPrintErrors = false
-
- app.set 'port', process.env.PORT or 3033
- app.set 'views', __dirname + '/views'
- app.set 'view engine', 'toffee'
- app.use express.favicon()
- app.use express.logger 'dev'
- app.use express.bodyParser()
- app.use express.methodOverride()
- app.use app.router
- app.use express.static __dirname + '/public'
-
-app.configure 'development', ->
- app.use express.errorHandler()
-
-app.get '/', routes.index
-
-http.createServer(app).listen app.get('port'), ->
- console.log "Express server listening on port #{app.get('port')}"
\ No newline at end of file
diff --git a/test/express3/public/javascripts/test_cases.js b/test/express3/public/javascripts/test_cases.js
deleted file mode 100644
index 082406f..0000000
--- a/test/express3/public/javascripts/test_cases.js
+++ /dev/null
@@ -1,4203 +0,0 @@
-var toffee;
-
-if (!(typeof toffee !== "undefined" && toffee !== null)) toffee = {};
-
-if (!toffee.templates) toffee.templates = {};
-
-toffee.states = {
- "TOFFEE": 1,
- "COFFEE": 2
-};
-
-toffee.__json = function(locals, o) {
- var json;
- try {
- json = JSON.stringify(o).replace(//g, '\\u003E').replace(/&/g, '\\u0026');
- } catch (e) {
- throw {
- stack: [],
- message: "JSONify error (" + e.message + ") on line " + locals.__toffee.lineno,
- toffee_line_base: locals.__toffee.lineno
- };
- }
- return "" + json;
-};
-
-toffee.__raw = function(locals, o) {
- return o;
-};
-
-toffee.__html = function(locals, o) {
- return ("" + o).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"');
-};
-
-toffee.__escape = function(locals, o) {
- if ((!(locals.__toffee.autoEscape != null)) || locals.__toffee.autoEscape) {
- if (o === void 0) return '';
- if ((o != null) && (typeof o) === "object") return locals.json(o);
- return locals.html(o);
- }
- return o;
-};
-
-toffee.__print = function(locals, o) {
- if (locals.__toffee.state === toffee.states.COFFEE) {
- locals.__toffee.out.push(o);
- return '';
- } else {
- return "" + o;
- }
-};
-
-toffee.__normalize = function(path) {
- var np, part, parts, _i, _len;
- if ((!(path != null)) || path === "/") {
- return path;
- } else {
- parts = path.split("/");
- np = [];
- if (parts[0]) np.push('');
- for (_i = 0, _len = parts.length; _i < _len; _i++) {
- part = parts[_i];
- if (part === "..") {
- if (np.length > 1) {
- np.pop();
- } else {
- np.push(part);
- }
- } else {
- if (part !== ".") np.push(part);
- }
- }
- path = np.join("/");
- if (!path) path = "/";
- return path;
- }
-};
-
-toffee.__partial = function(parent_tmpl, parent_locals, path, vars) {
- path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
- return toffee.__inlineInclude(path, vars, parent_locals);
-};
-
-toffee.__snippet = function(parent_tmpl, parent_locals, path, vars) {
- path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
- vars = vars != null ? vars : {};
- vars.__toffee = vars.__toffee || {};
- vars.__toffee.noInheritance = true;
- return toffee.__inlineInclude(path, vars, parent_locals);
-};
-
-toffee.__inlineInclude = function(path, locals, parent_locals) {
- var k, options, v;
- options = locals || {};
- options.__toffee = options.__toffee || {};
- if (!options.__toffee.noInheritance) {
- for (k in parent_locals) {
- v = parent_locals[k];
- if (!((locals != null ? locals[k] : void 0) != null)) {
- if (!(k === "print" || k === "partial" || k === "snippet" || k === "layout" || k === "__toffee")) {
- options[k] = v;
- }
- }
- }
- }
- if (!toffee.templates[path]) {
- return "Inline toffee include: Could not find " + path;
- } else {
- return toffee.templates[path].pub(options);
- }
-};
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/big_file/input.toffee"] = {
- bundlePath: "/big_file/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var count, i, _i, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/big_file/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/big_file/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- count = 0;
- for (i = _i = 0; _i < 2; i = ++_i) {
- _ts(1);
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("...");
- _ts(2);
- _ts(2);
- count += 1;
- print(" " + count + "...");
- _ts(1);
- _to(" ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("... ");
- _to("" + (escape(count++)));
- _to("...");
- _ts(2);
- _ts(2);
- count += 1;
- print(" " + count + "...");
- }
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/big_file/output.toffee"] = {
- bundlePath: "/big_file/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/big_file/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/big_file/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11... 12... 13... 14... 15... 16... 17... 18... 19... 20... 21... 22... 23... 24... 25... 26... 27... 28... 29... 30... 31... 32... 33... 34... 35... 36... 37... 38... 39... 40... 41... 42... 43... 44... 45... 46... 47... 48... 49... 50... 51... 52... 53... 54... 55... 56... 57... 58... 59... 60... 61... 62... 63... 64... 65... 66... 67... 68... 70... 70... 71... 72... 73... 74... 75... 76... 77... 78... 79... 80... 81... 82... 83... 84... 85... 86... 87... 88... 89... 90... 91... 92... 93... 94... 95... 96... 97... 98... 99... 100... 101... 102... 103... 104... 105... 106... 107... 108... 109... 110... 111... 112... 113... 114... 115... 116... 117... 118... 119... 120... 121... 122... 123... 124... 125... 126... 127... 128... 129... 130... 131... 132... 133... 134... 135... 136... 137... 138... 139... 140... 141... 142... 143... 144... 145... 146... 147... 148... 149... 150... 151... 152... 153... 154... 155... 156... 157... 158... 159... 160... 162...162... 163... 164... 165... 166... 167... 168... 169... 170... 171... 172... 173... 174... 175... 176... 177... 178... 179... 180... 181... 182... 183... 184... 185... 186... 187... 188... 189... 190... 191... 192... 193... 194... 195... 196... 197... 198... 199... 200... 201... 202... 203... 204... 205... 206... 207... 208... 209... 210... 211... 212... 213... 214... 215... 216... 217... 218... 219... 220... 221... 222... 223... 224... 225... 226... 227... 228... 229... 230... 232... 232... 233... 234... 235... 236... 237... 238... 239... 240... 241... 242... 243... 244... 245... 246... 247... 248... 249... 250... 251... 252... 253... 254... 255... 256... 257... 258... 259... 260... 261... 262... 263... 264... 265... 266... 267... 268... 269... 270... 271... 272... 273... 274... 275... 276... 277... 278... 279... 280... 281... 282... 283... 284... 285... 286... 287... 288... 289... 290... 291... 292... 293... 294... 295... 296... 297... 298... 299... 300... 301... 302... 303... 304... 305... 306... 307... 308... 309... 310... 311... 312... 313... 314... 315... 316... 317... 318... 319... 320... 321... 322... 324...");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/comments/input.toffee"] = {
- bundlePath: "/comments/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/comments/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/comments/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to("Pass 1\n");
- _ts(2);
- _ts(1);
- _to("\n");
- _to("Pass 2\n");
- _ts(2);
- _ts(2);
- /*
- print "FAIL FAIL FAIL"
- #{ foo }
- */
-
- _ts(1);
- _to("\n");
- _to("Pass 3\n");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/comments/output.toffee"] = {
- bundlePath: "/comments/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/comments/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/comments/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to("Pass 1\n");
- _to("\n");
- _to("Pass 2\n");
- _to("\n");
- _to("Pass 3\n");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/custom_escape/input.toffee"] = {
- bundlePath: "/custom_escape/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var w, x, y, z, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/custom_escape/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/custom_escape/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- x = '"Hello world"';
- y = ' ';
- z = 'click&clack';
- w = [
- 1, 2, {
- "place": "The Dreadfort"
- }
- ];
- _ts(1);
- _to("\n");
- _to(" default x = ");
- _to("" + (x != null ? escape(x) : ''));
- _to("\n");
- _to(" default y = ");
- _to("" + (y != null ? escape(y) : ''));
- _to("\n");
- _to(" default z = ");
- _to("" + (z != null ? escape(z) : ''));
- _to("\n");
- _to(" default w = ");
- _to("" + (w != null ? escape(w) : ''));
- _to("\n");
- _to("
\n");
- _to("\n");
- _to(" raw x = ");
- _to("" + (raw(x)));
- _to("\n");
- _to(" raw y = ");
- _to("" + (raw(y)));
- _to("\n");
- _to(" raw z = ");
- _to("" + (raw(z)));
- _to("\n");
- _to(" raw w = ");
- _to("" + (raw(w)));
- _to("\n");
- _to("
\n");
- _to("\n");
- _to("\n");
- _ts(2);
- _ts(2);
- print(" raw printed x = " + x + "\n");
- print(" raw printed y = " + y + "\n");
- print(" raw printed z = " + z + "\n");
- print(" raw printed w = " + w);
- _ts(1);
- _to("\n");
- _to("
");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/custom_escape/output.toffee"] = {
- bundlePath: "/custom_escape/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/custom_escape/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/custom_escape/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to(" default x = [\"Hello world\"]\n");
- _to(" default y = [
]\n");
- _to(" default z = [click&clack]\n");
- _to(" default w = [1,2,[object Object]]\n");
- _to("\n");
- _to("\n");
- _to(" raw x = \"Hello world\"\n");
- _to(" raw y =
\n");
- _to(" raw z = click&clack\n");
- _to(" raw w = 1,2,[object Object]\n");
- _to("\n");
- _to("\n");
- _to("\n");
- _to(" raw printed x = \"Hello world\"\n");
- _to(" raw printed y =
\n");
- _to(" raw printed z = click&clack\n");
- _to(" raw printed w = 1,2,[object Object]\n");
- _to("");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/eco_compare/input.toffee"] = {
- bundlePath: "/eco_compare/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var f, friends, project, _i, _l, _len, _ln, _ref, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/eco_compare/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/eco_compare/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- this.projects = [
- {
- url: "http://localhost:3000",
- name: "okcupid",
- description: "A site for singles"
- }, {
- url: "http://localhost:3001",
- name: "tallygram",
- description: "A site for anyone"
- }
- ];
- if (this.projects.length) {
- _ref = this.projects;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- project = _ref[_i];
- _ts(1);
- _to("\n");
- _to(" ");
- _to("" + (escape(project.name)));
- _to(" \n");
- _to(" ");
- _to("" + (escape(project.description)));
- _to("
\n");
- _to(" ");
- _ts(2);
- }
- } else {
- _ts(1);
- _to(" No projects ");
- _ts(2);
- }
- friends = [
- {
- gender: "f",
- name: "Jennie"
- }, {
- gender: "f",
- name: "Rachel"
- }, {
- gender: "m",
- name: "Petar"
- }, {
- gender: "f",
- name: "Marissa"
- }
- ];
- _ts(1);
- _to("\n");
- _to("\n");
- _to("You have ");
- _to("" + (escape(((function() {
- var _j, _len1, _results;
- _results = [];
- for (_j = 0, _len1 = friends.length; _j < _len1; _j++) {
- f = friends[_j];
- if (f.gender === "f") _results.push(f);
- }
- return _results;
- })()).length)));
- _to(" female friends.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/eco_compare/output.toffee"] = {
- bundlePath: "/eco_compare/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/eco_compare/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/eco_compare/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to(" okcupid \n");
- _to(" A site for singles
\n");
- _to(" \n");
- _to(" tallygram \n");
- _to(" A site for anyone
\n");
- _to(" \n");
- _to("\n");
- _to("You have 3 female friends.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/escape/input.toffee"] = {
- bundlePath: "/escape/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var w, x, y, z, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/escape/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/escape/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- x = '"Hello world"';
- y = ' ';
- z = 'click&clack';
- w = [
- 1, 2, {
- "place": "The Dreadfort"
- }
- ];
- _ts(1);
- _to("\n");
- _to(" default x = ");
- _to("" + (x != null ? escape(x) : ''));
- _to("\n");
- _to(" default y = ");
- _to("" + (y != null ? escape(y) : ''));
- _to("\n");
- _to(" default z = ");
- _to("" + (z != null ? escape(z) : ''));
- _to("\n");
- _to(" default w = ");
- _to("" + (w != null ? escape(w) : ''));
- _to("\n");
- _to(" default r = ");
- _to("" + (typeof r !== "undefined" && r !== null ? escape(r) : ''));
- _to("\n");
- _to(" default w.foo = ");
- _to("" + (escape(w.foo)));
- _to("\n");
- _to("
\n");
- _to("\n");
- _to(" raw x = ");
- _to("" + (raw(x)));
- _to("\n");
- _to(" raw y = ");
- _to("" + (raw(y)));
- _to("\n");
- _to(" raw z = ");
- _to("" + (raw(z)));
- _to("\n");
- _to(" raw w = ");
- _to("" + (raw(w)));
- _to("\n");
- _to("
\n");
- _to("\n");
- _to("\n");
- _ts(2);
- _ts(2);
- print(" raw printed x = " + x + "\n");
- print(" raw printed y = " + y + "\n");
- print(" raw printed z = " + z + "\n");
- print(" raw printed w = " + w);
- _ts(1);
- _to("\n");
- _to("
\n");
- _to("\n");
- _ts(2);
- _ts(2);
- print(" json printed x = " + (raw(raw(raw(raw(json(x)))))) + "\n");
- print(" json printed y = " + (raw(raw(raw(raw(json(y)))))) + "\n");
- print(" json printed z = " + (raw(raw(raw(raw(json(z)))))) + "\n");
- print(" json printed w = " + (raw(raw(raw(raw(json(w)))))));
- _ts(1);
- _to("\n");
- _to("
\n");
- _to("\n");
- _ts(2);
- _ts(2);
- print(" html printed longhand x = " + (__toffee.html(x)) + "\n");
- print(" html printed longhand y = " + (__toffee.html(y)) + "\n");
- print(" html printed longhand z = " + (__toffee.html(z)) + "\n");
- print(" html printed longhand w = " + (__toffee.html(w)));
- _ts(1);
- _to("\n");
- _to("
");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/escape/output.toffee"] = {
- bundlePath: "/escape/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/escape/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/escape/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to(" default x = "Hello world"\n");
- _to(" default y = <hr />\n");
- _to(" default z = click&clack\n");
- _to(" default w = [1,2,{\"place\":\"The Dreadfort\"}]\n");
- _to(" default r = \n");
- _to(" default w.foo = \n");
- _to("
\n");
- _to("\n");
- _to(" raw x = \"Hello world\"\n");
- _to(" raw y =
\n");
- _to(" raw z = click&clack\n");
- _to(" raw w = 1,2,[object Object]\n");
- _to("\n");
- _to("\n");
- _to("\n");
- _to(" raw printed x = \"Hello world\"\n");
- _to(" raw printed y =
\n");
- _to(" raw printed z = click&clack\n");
- _to(" raw printed w = 1,2,[object Object]\n");
- _to("\n");
- _to("\n");
- _to(" json printed x = \"\\\"Hello world\\\"\"\n");
- _to(" json printed y = \"\\u003Chr /\\u003E\"\n");
- _to(" json printed z = \"click\\u0026clack\"\n");
- _to(" json printed w = [1,2,{\"place\":\"The Dreadfort\"}]\n");
- _to("
\n");
- _to("\n");
- _to(" html printed longhand x = "Hello world"\n");
- _to(" html printed longhand y = <hr />\n");
- _to(" html printed longhand z = click&clack\n");
- _to(" html printed longhand w = 1,2,[object Object]\n");
- _to("
");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/hello_world/input.toffee"] = {
- bundlePath: "/hello_world/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/hello_world/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/hello_world/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("" + (typeof greeting !== "undefined" && greeting !== null ? escape(greeting) : ''));
- _to(", world.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/hello_world/output.toffee"] = {
- bundlePath: "/hello_world/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/hello_world/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/hello_world/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("Hello, world.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/hello_world/temp.toffee"] = {
- bundlePath: "/hello_world/temp.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/hello_world/temp.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/hello_world/temp.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("a\n");
- _to("b\n");
- _to("c\n");
- _to("" + (escape(passed_fn(100))));
- _to("\n");
- _to("d\n");
- _to("e\n");
- _to("f");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_order/child.toffee"] = {
- bundlePath: "/include_order/child.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_order/child.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_order/child.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("a\n");
- _ts(2);
- _ts(2);
- say_hi();
- _ts(1);
- _to("\n");
- _to("b");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_order/input.toffee"] = {
- bundlePath: "/include_order/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var say_hi, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_order/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_order/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- say_hi = function() {
- _ts(1);
- _ts(1);
- _to("hi");
- return _ts(2);
- };
- _ts(1);
- _to("1\n");
- _to("2\n");
- _to("" + (partial("child.toffee", {
- say_hi: say_hi
- })));
- _to("\n");
- _to("3\n");
- _to("4");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_order/output.toffee"] = {
- bundlePath: "/include_order/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_order/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_order/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("1\n");
- _to("2\n");
- _to("hia\n");
- _to("\n");
- _to("b\n");
- _to("3\n");
- _to("4");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_recursion/input.toffee"] = {
- bundlePath: "/include_recursion/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_recursion/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_recursion/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- if (countdown === 0) {
- _ts(1);
- _to("blastoff!");
- _ts(2);
- } else {
- print("" + countdown + "..." + (partial('input.toffee', {
- countdown: countdown - 1
- })));
- }
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_recursion/output.toffee"] = {
- bundlePath: "/include_recursion/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_recursion/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_recursion/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("10...9...8...7...6...5...4...3...2...1...blastoff!");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_techniques/input.toffee"] = {
- bundlePath: "/include_techniques/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_techniques/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_techniques/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("" + (partial("message.toffee", {
- from: "Chris "
- })));
- _to("\n");
- _to("" + (partial("message.toffee", {
- from: "Max & Sam"
- })));
- _to("\n");
- _ts(2);
- _ts(2);
- print(partial("message.toffee", {
- from: "Christian"
- }));
- _ts(1);
- _ts(1);
- _to("" + (partial("message.toffee", {
- from: "Jennie"
- })));
- _ts(2);
- print(partial("message.toffee", {
- sender: "The enemy"
- }));
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_techniques/message.toffee"] = {
- bundlePath: "/include_techniques/message.toffee"
- };
-
- tmpl.pub = function(locals) {
- var from, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_techniques/message.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_techniques/message.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- from = from || "Unknown";
- _ts(1);
- _to("From: ");
- _to("" + (from != null ? escape(from) : ''));
- _to(" \n");
- _to("Msg: Hello, world\n");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/include_techniques/output.toffee"] = {
- bundlePath: "/include_techniques/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/include_techniques/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/include_techniques/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("From: Chris <ccoyne77@gmail> \n");
- _to("Msg: Hello, world\n");
- _to("\n");
- _to("From: Max & Sam \n");
- _to("Msg: Hello, world\n");
- _to("\n");
- _to("From: Christian \n");
- _to("Msg: Hello, world\n");
- _to("From: Jennie \n");
- _to("Msg: Hello, world\n");
- _to("From: Unknown \n");
- _to("Msg: Hello, world\n");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/indent_attack/input.toffee"] = {
- bundlePath: "/indent_attack/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var i, x, _i, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/indent_attack/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/indent_attack/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to(" \n");
- _to(" ");
- _ts(2);
- _ts(2);
- if (1 === 1) {
- if (2 === 2) {
- if (3 === 3) {
- _ts(1);
- _to("Pass1");
- _ts(2);
- }
- }
- }
- if (1 === 1) {
- if (2 === 3) {
- if (3 === 3) {
- _ts(1);
- _to("Fail");
- _ts(2);
- } else {
- _ts(1);
- _to("Fail");
- _ts(2);
- }
- } else {
- if (2 === 2) {
- if (3 === 3) {
- _ts(1);
- _to("Pass2");
- _ts(2);
- }
- }
- }
- }
- _ts(1);
- _to("\n");
- _to(" \n");
- _to("\n");
- _ts(2);
- _ts(2);
- if (1 === 1) {
- if (2 === 2) {
- if (3 === 3) {
- _ts(1);
- _to("Pass3");
- _ts(2);
- }
- }
- }
- if (1 === 1) {
- if (2 === 3) {
- if (3 === 3) {
- _ts(1);
- _to("Fail");
- _ts(2);
- } else {
- _ts(1);
- _to("Fail");
- _ts(2);
- }
- } else {
- if (2 === 2) {
- if (3 === 3) {
- _ts(1);
- _to("Pass4");
- _ts(2);
- }
- }
- }
- }
- _ts(1);
- _to("\n");
- _to(" \n");
- _to("\n");
- _ts(2);
- _ts(2);
- if (10 === 10) {
- if (20 === 20) {
- if (30 === 30) {
- _ts(1);
- _to("Pass5");
- _ts(2);
- }
- }
- }
- if (10 === 10) {
- if (20 === 30) {
- if (30 === 30) {
- _ts(1);
- _to("Fail");
- _ts(2);
- } else {
- _ts(1);
- _to("Fail");
- _ts(2);
- }
- } else {
- if (20 === 20) {
- if (30 === 30) {
- _ts(1);
- _to("Pass6");
- _ts(2);
- }
- }
- }
- }
- _ts(1);
- _to("\n");
- _to("\n");
- _ts(2);
- _ts(2);
- if (99 === 99) {
- print('Pass7');
- } else {
- print('Fail');
- _ts(1);
- _to("Fail8");
- _ts(2);
- }
- _ts(1);
- _ts(1);
- _to("Pass8");
- _ts(2);
- _ts(1);
- _to("\n");
- _to("\n");
- _ts(2);
- _ts(2);
- _ts(1);
- _ts(1);
- _to("...passed with flying colors.");
- _ts(2);
- _ts(1);
- _to("\n");
- _to("\n");
- _to(" ");
- _ts(2);
- _ts(2);
- x = 10;
- if (x > 1) {
- for (i = _i = 0; 0 <= x ? _i < x : _i > x; i = 0 <= x ? ++_i : --_i) {
- _ts(1);
- _to(" ");
- _to("" + (i != null ? escape(i) : ''));
- _ts(2);
- _ts(2);
- if (i === 3) {
- _ts(1);
- _to(" (my favorite number) ");
- _ts(2);
- }
- }
- }
- _ts(1);
- _to("\n");
- _to("
");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/indent_attack/output.toffee"] = {
- bundlePath: "/indent_attack/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/indent_attack/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/indent_attack/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to(" \n");
- _to(" Pass1Pass2\n");
- _to(" \n");
- _to("\n");
- _to("Pass3Pass4\n");
- _to(" \n");
- _to("\n");
- _to("Pass5Pass6\n");
- _to("\n");
- _to("Pass7Pass8\n");
- _to("\n");
- _to("...passed with flying colors.\n");
- _to("\n");
- _to(" 0 1 2 3 (my favorite number) 4 5 6 7 8 9\n");
- _to("
");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/junk/input.toffee"] = {
- bundlePath: "/junk/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var supplies, supply, _i, _l, _len, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/junk/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/junk/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- supplies = ["broom", "mop", "vacuum"];
- _ts(1);
- _to("\n");
- _to(" ");
- _ts(2);
- _ts(2);
- for (_i = 0, _len = supplies.length; _i < _len; _i++) {
- supply = supplies[_i];
- _ts(1);
- _to("");
- _to("" + (supply != null ? escape(supply) : ''));
- _to(" ");
- _ts(2);
- }
- _ts(1);
- _to("\n");
- _to(" ");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/junk/output.toffee"] = {
- bundlePath: "/junk/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/junk/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/junk/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to(" broom mop vacuum \n");
- _to(" ");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/lambda_fns/input.toffee"] = {
- bundlePath: "/lambda_fns/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var echo_it, print_it, print_it_twice, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/lambda_fns/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/lambda_fns/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- print_it = function(msg) {
- _ts(1);
- _to("" + (msg != null ? escape(msg) : ''));
- return _ts(2);
- };
- print_it_twice = function(msg) {
- var m;
- _ts(1);
- _ts(1);
- _to("" + (msg != null ? escape(msg) : ''));
- _ts(2);
- m = msg;
- _ts(1);
- _ts(1);
- _to("" + (m != null ? escape(m) : ''));
- return _ts(2);
- };
- echo_it = function(msg) {
- var v;
- v = msg;
- return v;
- };
- print_it("Pass");
- print_it_twice("Pass");
- print(echo_it("Pass"));
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/lambda_fns/output.toffee"] = {
- bundlePath: "/lambda_fns/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/lambda_fns/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/lambda_fns/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("PassPassPassPass");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/multiline_interpolation/foo.toffee"] = {
- bundlePath: "/multiline_interpolation/foo.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/multiline_interpolation/foo.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/multiline_interpolation/foo.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("" + (typeof a !== "undefined" && a !== null ? escape(a) : ''));
- _to(" ");
- _to("" + (typeof b !== "undefined" && b !== null ? escape(b) : ''));
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/multiline_interpolation/input.toffee"] = {
- bundlePath: "/multiline_interpolation/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/multiline_interpolation/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/multiline_interpolation/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("" + (escape("Hello, " + "world")));
- _to("\n");
- _to(" \n");
- _to("" + (partial("foo.toffee", {
- a: "Goodbye" + ',',
- b: "world"
- })));
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/multiline_interpolation/output.toffee"] = {
- bundlePath: "/multiline_interpolation/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/multiline_interpolation/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/multiline_interpolation/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("Hello, world\n");
- _to(" \n");
- _to("Goodbye, world");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/plaintext/input.toffee"] = {
- bundlePath: "/plaintext/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/plaintext/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/plaintext/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("Hi there.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/plaintext/output.toffee"] = {
- bundlePath: "/plaintext/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/plaintext/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/plaintext/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("Hi there.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/snippets/foo/bar/body.toffee"] = {
- bundlePath: "/snippets/foo/bar/body.toffee"
- };
-
- tmpl.pub = function(locals) {
- var msg, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/snippets/foo/bar/body.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/snippets/foo/bar/body.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- msg = msg || "Unknown message";
- print(msg);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/snippets/foo/message.toffee"] = {
- bundlePath: "/snippets/foo/message.toffee"
- };
-
- tmpl.pub = function(locals) {
- var from, msg, _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/snippets/foo/message.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/snippets/foo/message.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(2);
- from = from || "Unknown sender";
- msg = msg || "Unknown message.";
- print("From: " + from + "\n" + (snippet('./bar/body.toffee', {
- msg: msg
- })));
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/snippets/input.toffee"] = {
- bundlePath: "/snippets/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/snippets/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/snippets/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("" + (partial("./foo/message.toffee")));
- _to("\n");
- _to("" + (escape(snippet("./foo/message.toffee"))));
- _to("\n");
- _to("" + (partial("./foo/message.toffee", {
- from: "Sam"
- })));
- _to("\n");
- _to("" + (escape(snippet("./foo/message.toffee", {
- from: "Max"
- }))));
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/snippets/output.toffee"] = {
- bundlePath: "/snippets/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/snippets/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/snippets/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("From: Preloaded sender\n");
- _to("Preloaded message.\n");
- _to("From: Unknown sender\n");
- _to("Unknown message.\n");
- _to("From: Sam\n");
- _to("Preloaded message.\n");
- _to("From: Max\n");
- _to("Unknown message.");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/special_cases/input.toffee"] = {
- bundlePath: "/special_cases/input.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/special_cases/input.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/special_cases/input.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _ts(2);
- _ts(2);
- _ts(1);
- _ts(1);
- _to('"' + "PASSED" + '"');
- _ts(2);
- _ts(1);
- _to("\n");
- _ts(2);
- _ts(1);
- _to("\n");
- _to("\n");
- _to(" ");
- _to("" + (print("" + 'click & clack' + " ")));
- _to("\n");
- _to("
\n");
- _ts(2);
- _ts(1);
- _to("\n");
- _to("A backslash is a \\\n");
- _to("");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
-
-(function() {
- var tmpl;
-
- tmpl = toffee.templates["/special_cases/output.toffee"] = {
- bundlePath: "/special_cases/output.toffee"
- };
-
- tmpl.pub = function(locals) {
- var _l, _ln, _t, _to, _ts;
- _l = locals;
- _t = _l.__toffee = {
- out: []
- };
- _to = function(x) {
- return locals.__toffee.out.push(x);
- };
- _ln = function(x) {
- return locals.__toffee.lineno = x;
- };
- _ts = function(x) {
- return locals.__toffee.state = x;
- };
- if (!(_l.print != null)) {
- _l.print = function(o) {
- return toffee.__print(_l, o);
- };
- }
- if (!(_l.json != null)) {
- _l.json = function(o) {
- return toffee.__json(_l, o);
- };
- }
- if (!(_l.raw != null)) {
- _l.raw = function(o) {
- return toffee.__raw(_l, o);
- };
- }
- if (!(_l.html != null)) {
- _l.html = function(o) {
- return toffee.__html(_l, o);
- };
- }
- if (!(_l.escape != null)) {
- _l.escape = function(o) {
- return toffee.__escape(_l, o);
- };
- }
- if (!(_l.partial != null)) {
- _l.partial = function(path, vars) {
- return toffee.__partial(toffee.templates["/special_cases/output.toffee"], _l, path, vars);
- };
- }
- if (!(_l.snippet != null)) {
- _l.snippet = function(path, vars) {
- return toffee.__snippet(toffee.templates["/special_cases/output.toffee"], _l, path, vars);
- };
- }
- _t.print = _l.print;
- _t.json = _l.json;
- _t.raw = _l.raw;
- _t.html = _l.html;
- _t.escape = _l.escape;
- _t.partial = _l.partial;
- _t.snippet = _l.snippet;
- with (locals) {;
-
- __toffee.out = [];
- _ts(1);
- _ts(1);
- _to("\n");
- _to('"' + "PASSED\"\n");
- _to("\n");
- _to("\n");
- _to(" click & clack \n");
- _to("
\n");
- _to("\n");
- _to("A backslash is a \\\n");
- _to("");
- _ts(2);
- __toffee.res = __toffee.out.join("");
- return __toffee.res;
- return } /* closing JS 'with' */ ;
- };
-
- if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
- return tmpl.pub(__toffee_run_input);
- }
-
-}).call(this);
diff --git a/test/express3/routes/index.js b/test/express3/routes/index.js
deleted file mode 100644
index 29fed96..0000000
--- a/test/express3/routes/index.js
+++ /dev/null
@@ -1,14 +0,0 @@
-
-/*
- * GET home page.
- */
-
-exports.index = function(req, res){
- var circular_obj = [1,2,3];
- circular_obj.push(circular_obj);
- var vars = {
- title: 'Express',
- a_bad_test_function: function() {return JSON.stringify(circular_obj);}
- }
- res.render('index', vars);
-};
\ No newline at end of file
diff --git a/test/express3/views/index.toffee b/test/express3/views/index.toffee
deleted file mode 100644
index a68d0a1..0000000
--- a/test/express3/views/index.toffee
+++ /dev/null
@@ -1,444 +0,0 @@
-
-
- Test Toffee in the browser
-
-
-
-
-
- FILE EXPECTED OUTPUT SERVER RENDER BROWSER RENDER
-
-
-
-
- big_file
- #{partial '../../cases/big_file/input.toffee', {}}
-
- 0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11... 12... 13... 14... 15... 16... 17... 18... 19... 20... 21... 22... 23... 24... 25... 26... 27... 28... 29... 30... 31... 32... 33... 34... 35... 36... 37... 38... 39... 40... 41... 42... 43... 44... 45... 46... 47... 48... 49... 50... 51... 52... 53... 54... 55... 56... 57... 58... 59... 60... 61... 62... 63... 64... 65... 66... 67... 68... 70... 70... 71... 72... 73... 74... 75... 76... 77... 78... 79... 80... 81... 82... 83... 84... 85... 86... 87... 88... 89... 90... 91... 92... 93... 94... 95... 96... 97... 98... 99... 100... 101... 102... 103... 104... 105... 106... 107... 108... 109... 110... 111... 112... 113... 114... 115... 116... 117... 118... 119... 120... 121... 122... 123... 124... 125... 126... 127... 128... 129... 130... 131... 132... 133... 134... 135... 136... 137... 138... 139... 140... 141... 142... 143... 144... 145... 146... 147... 148... 149... 150... 151... 152... 153... 154... 155... 156... 157... 158... 159... 160... 162...162... 163... 164... 165... 166... 167... 168... 169... 170... 171... 172... 173... 174... 175... 176... 177... 178... 179... 180... 181... 182... 183... 184... 185... 186... 187... 188... 189... 190... 191... 192... 193... 194... 195... 196... 197... 198... 199... 200... 201... 202... 203... 204... 205... 206... 207... 208... 209... 210... 211... 212... 213... 214... 215... 216... 217... 218... 219... 220... 221... 222... 223... 224... 225... 226... 227... 228... 229... 230... 232... 232... 233... 234... 235... 236... 237... 238... 239... 240... 241... 242... 243... 244... 245... 246... 247... 248... 249... 250... 251... 252... 253... 254... 255... 256... 257... 258... 259... 260... 261... 262... 263... 264... 265... 266... 267... 268... 269... 270... 271... 272... 273... 274... 275... 276... 277... 278... 279... 280... 281... 282... 283... 284... 285... 286... 287... 288... 289... 290... 291... 292... 293... 294... 295... 296... 297... 298... 299... 300... 301... 302... 303... 304... 305... 306... 307... 308... 309... 310... 311... 312... 313... 314... 315... 316... 317... 318... 319... 320... 321... 322... 324...
-
-
-
-
-
-
-
-
-
-
-
-
-
- comments
- #{partial '../../cases/comments/input.toffee', {
- "greeting": "Hello"
-}}
-
-
-Pass 1
-
-Pass 2
-
-Pass 3
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- eco_compare
- #{partial '../../cases/eco_compare/input.toffee', {}}
-
-
- okcupid
- A site for singles
-
- tallygram
- A site for anyone
-
-
-You have 3 female friends.
-
-
-
-
-
-
-
-
-
-
-
-
-
- escape
- #{partial '../../cases/escape/input.toffee', {}}
-
-
- default x = "Hello world"
- default y = <hr />
- default z = click&clack
- default w = [1,2,{"place":"The Dreadfort"}]
- default r =
- default w.foo =
-
-
- raw x = "Hello world"
- raw y =
- raw z = click&clack
- raw w = 1,2,[object Object]
-
-
-
- raw printed x = "Hello world"
- raw printed y =
- raw printed z = click&clack
- raw printed w = 1,2,[object Object]
-
-
- json printed x = "\"Hello world\""
- json printed y = "\u003Chr /\u003E"
- json printed z = "click\u0026clack"
- json printed w = [1,2,{"place":"The Dreadfort"}]
-
-
- html printed longhand x = "Hello world"
- html printed longhand y = <hr />
- html printed longhand z = click&clack
- html printed longhand w = 1,2,[object Object]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- hello_world
- #{partial '../../cases/hello_world/input.toffee', {
- "greeting": "Hello"
-}}
-
- Hello, world.
-
-
-
-
-
-
-
-
-
-
-
-
-
- include_order
- #{partial '../../cases/include_order/input.toffee', {
- "greeting": "Hello"
-}}
-
- 1
-2
-hia
-
-b
-3
-4
-
-
-
-
-
-
-
-
-
-
-
-
-
- include_recursion
- #{partial '../../cases/include_recursion/input.toffee', {
- "countdown" : 10
-}}
-
- 10...9...8...7...6...5...4...3...2...1...blastoff!
-
-
-
-
-
-
-
-
-
-
-
-
-
- include_techniques
- #{partial '../../cases/include_techniques/input.toffee', {
-}}
-
- From: Chris <ccoyne77@gmail>
-Msg: Hello, world
-
-From: Max & Sam
-Msg: Hello, world
-
-From: Christian
-Msg: Hello, world
-From: Jennie
-Msg: Hello, world
-From: Unknown
-Msg: Hello, world
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- indent_attack
- #{partial '../../cases/indent_attack/input.toffee', {
-}}
-
-
- Pass1Pass2
-
-
-Pass3Pass4
-
-
-Pass5Pass6
-
-Pass7Pass8
-
-...passed with flying colors.
-
- 0 1 2 3 (my favorite number) 4 5 6 7 8 9
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- junk
- #{partial '../../cases/junk/input.toffee', {}}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- lambda_fns
- #{partial '../../cases/lambda_fns/input.toffee', {}}
-
- PassPassPassPass
-
-
-
-
-
-
-
-
-
-
-
-
-
- multiline_interpolation
- #{partial '../../cases/multiline_interpolation/input.toffee', {}}
-
- Hello, world
-
-Goodbye, world
-
-
-
-
-
-
-
-
-
-
-
-
-
- plaintext
- #{partial '../../cases/plaintext/input.toffee', {}}
-
- Hi there.
-
-
-
-
-
-
-
-
-
-
-
-
-
- snippets
- #{partial '../../cases/snippets/input.toffee', {
- "from": "Preloaded sender",
- "msg" : "Preloaded message."
-}}
-
- From: Preloaded sender
-Preloaded message.
-From: Unknown sender
-Unknown message.
-From: Sam
-Preloaded message.
-From: Max
-Unknown message.
-
-
-
-
-
-
-
-
-
-
-
-
-
- special_cases
- #{partial '../../cases/special_cases/input.toffee', {}}
-
-
-"PASSED"
-
-
- click & clack
-
-
-A backslash is a \
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/test/express4/app.coffee b/test/express4/app.coffee
new file mode 100644
index 0000000..6dc78ea
--- /dev/null
+++ b/test/express4/app.coffee
@@ -0,0 +1,37 @@
+
+run = (cb) ->
+ toffee = require '../../index.js'
+ express = require 'express'
+ http = require 'http'
+
+ app = express()
+
+
+ app_configure = ->
+
+ toffee.expressEngine.verbose = not module.parent
+ toffee.expressEngine.prettyPrintErrors = false
+
+ app.set 'port', process.env.PORT or 3033
+ app.set 'views', __dirname + '/views'
+ app.engine 'toffee', toffee.__express
+ app.use express.static __dirname + '/public'
+ app.route('/').get (req, res) =>
+ circular_obj = [1,2,3]
+ circular_obj.push circular_obj
+ title = 'Express'
+ a_bad_test_function = -> return JSON.stringify circular_obj
+ vars = {title, a_bad_test_function}
+ res.render 'index.toffee', vars
+
+ http.createServer(app).listen app.get('port'), ->
+ console.log "Express server listening on port #{app.get('port')}"
+ if cb? then cb()
+
+ app_configure()
+
+if not module.parent
+ run()
+
+else
+ exports.run = (cb) -> run cb
diff --git a/test/express4/public/javascripts/jquery-1.9.0.min.js b/test/express4/public/javascripts/jquery-1.9.0.min.js
new file mode 100644
index 0000000..50d1b22
--- /dev/null
+++ b/test/express4/public/javascripts/jquery-1.9.0.min.js
@@ -0,0 +1,4 @@
+/*! jQuery v1.9.0 | (c) 2005, 2012 jQuery Foundation, Inc. | jquery.org/license */(function(e,t){"use strict";function n(e){var t=e.length,n=st.type(e);return st.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e){var t=Tt[e]={};return st.each(e.match(lt)||[],function(e,n){t[n]=!0}),t}function i(e,n,r,i){if(st.acceptData(e)){var o,a,s=st.expando,u="string"==typeof n,l=e.nodeType,c=l?st.cache:e,f=l?e[s]:e[s]&&s;if(f&&c[f]&&(i||c[f].data)||!u||r!==t)return f||(l?e[s]=f=K.pop()||st.guid++:f=s),c[f]||(c[f]={},l||(c[f].toJSON=st.noop)),("object"==typeof n||"function"==typeof n)&&(i?c[f]=st.extend(c[f],n):c[f].data=st.extend(c[f].data,n)),o=c[f],i||(o.data||(o.data={}),o=o.data),r!==t&&(o[st.camelCase(n)]=r),u?(a=o[n],null==a&&(a=o[st.camelCase(n)])):a=o,a}}function o(e,t,n){if(st.acceptData(e)){var r,i,o,a=e.nodeType,u=a?st.cache:e,l=a?e[st.expando]:st.expando;if(u[l]){if(t&&(r=n?u[l]:u[l].data)){st.isArray(t)?t=t.concat(st.map(t,st.camelCase)):t in r?t=[t]:(t=st.camelCase(t),t=t in r?[t]:t.split(" "));for(i=0,o=t.length;o>i;i++)delete r[t[i]];if(!(n?s:st.isEmptyObject)(r))return}(n||(delete u[l].data,s(u[l])))&&(a?st.cleanData([e],!0):st.support.deleteExpando||u!=u.window?delete u[l]:u[l]=null)}}}function a(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(Nt,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:wt.test(r)?st.parseJSON(r):r}catch(o){}st.data(e,n,r)}else r=t}return r}function s(e){var t;for(t in e)if(("data"!==t||!st.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function u(){return!0}function l(){return!1}function c(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}function f(e,t,n){if(t=t||0,st.isFunction(t))return st.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return st.grep(e,function(e){return e===t===n});if("string"==typeof t){var r=st.grep(e,function(e){return 1===e.nodeType});if(Wt.test(t))return st.filter(t,r,!n);t=st.filter(t,r)}return st.grep(e,function(e){return st.inArray(e,t)>=0===n})}function p(e){var t=zt.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}function d(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function h(e){var t=e.getAttributeNode("type");return e.type=(t&&t.specified)+"/"+e.type,e}function g(e){var t=nn.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function m(e,t){for(var n,r=0;null!=(n=e[r]);r++)st._data(n,"globalEval",!t||st._data(t[r],"globalEval"))}function y(e,t){if(1===t.nodeType&&st.hasData(e)){var n,r,i,o=st._data(e),a=st._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)st.event.add(t,n,s[n][r])}a.data&&(a.data=st.extend({},a.data))}}function v(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!st.support.noCloneEvent&&t[st.expando]){r=st._data(t);for(i in r.events)st.removeEvent(t,i,r.handle);t.removeAttribute(st.expando)}"script"===n&&t.text!==e.text?(h(t).text=e.text,g(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),st.support.html5Clone&&e.innerHTML&&!st.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Zt.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}function b(e,n){var r,i,o=0,a=e.getElementsByTagName!==t?e.getElementsByTagName(n||"*"):e.querySelectorAll!==t?e.querySelectorAll(n||"*"):t;if(!a)for(a=[],r=e.childNodes||e;null!=(i=r[o]);o++)!n||st.nodeName(i,n)?a.push(i):st.merge(a,b(i,n));return n===t||n&&st.nodeName(e,n)?st.merge([e],a):a}function x(e){Zt.test(e.type)&&(e.defaultChecked=e.checked)}function T(e,t){if(t in e)return t;for(var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=Nn.length;i--;)if(t=Nn[i]+n,t in e)return t;return r}function w(e,t){return e=t||e,"none"===st.css(e,"display")||!st.contains(e.ownerDocument,e)}function N(e,t){for(var n,r=[],i=0,o=e.length;o>i;i++)n=e[i],n.style&&(r[i]=st._data(n,"olddisplay"),t?(r[i]||"none"!==n.style.display||(n.style.display=""),""===n.style.display&&w(n)&&(r[i]=st._data(n,"olddisplay",S(n.nodeName)))):r[i]||w(n)||st._data(n,"olddisplay",st.css(n,"display")));for(i=0;o>i;i++)n=e[i],n.style&&(t&&"none"!==n.style.display&&""!==n.style.display||(n.style.display=t?r[i]||"":"none"));return e}function C(e,t,n){var r=mn.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function k(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;4>o;o+=2)"margin"===n&&(a+=st.css(e,n+wn[o],!0,i)),r?("content"===n&&(a-=st.css(e,"padding"+wn[o],!0,i)),"margin"!==n&&(a-=st.css(e,"border"+wn[o]+"Width",!0,i))):(a+=st.css(e,"padding"+wn[o],!0,i),"padding"!==n&&(a+=st.css(e,"border"+wn[o]+"Width",!0,i)));return a}function E(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=ln(e),a=st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=un(e,t,o),(0>i||null==i)&&(i=e.style[t]),yn.test(i))return i;r=a&&(st.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+k(e,t,n||(a?"border":"content"),r,o)+"px"}function S(e){var t=V,n=bn[e];return n||(n=A(e,t),"none"!==n&&n||(cn=(cn||st("").css("cssText","display:block !important")).appendTo(t.documentElement),t=(cn[0].contentWindow||cn[0].contentDocument).document,t.write(""),t.close(),n=A(e,t),cn.detach()),bn[e]=n),n}function A(e,t){var n=st(t.createElement(e)).appendTo(t.body),r=st.css(n[0],"display");return n.remove(),r}function j(e,t,n,r){var i;if(st.isArray(t))st.each(t,function(t,i){n||kn.test(e)?r(e,i):j(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==st.type(t))r(e,t);else for(i in t)j(e+"["+i+"]",t[i],n,r)}function D(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(lt)||[];if(st.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function L(e,n,r,i){function o(u){var l;return a[u]=!0,st.each(e[u]||[],function(e,u){var c=u(n,r,i);return"string"!=typeof c||s||a[c]?s?!(l=c):t:(n.dataTypes.unshift(c),o(c),!1)}),l}var a={},s=e===$n;return o(n.dataTypes[0])||!a["*"]&&o("*")}function H(e,n){var r,i,o=st.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((o[r]?e:i||(i={}))[r]=n[r]);return i&&st.extend(!0,e,i),e}function M(e,n,r){var i,o,a,s,u=e.contents,l=e.dataTypes,c=e.responseFields;for(o in c)o in r&&(n[c[o]]=r[o]);for(;"*"===l[0];)l.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("Content-Type"));if(i)for(o in u)if(u[o]&&u[o].test(i)){l.unshift(o);break}if(l[0]in r)a=l[0];else{for(o in r){if(!l[0]||e.converters[o+" "+l[0]]){a=o;break}s||(s=o)}a=a||s}return a?(a!==l[0]&&l.unshift(a),r[a]):t}function q(e,t){var n,r,i,o,a={},s=0,u=e.dataTypes.slice(),l=u[0];if(e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u[1])for(n in e.converters)a[n.toLowerCase()]=e.converters[n];for(;i=u[++s];)if("*"!==i){if("*"!==l&&l!==i){if(n=a[l+" "+i]||a["* "+i],!n)for(r in a)if(o=r.split(" "),o[1]===i&&(n=a[l+" "+o[0]]||a["* "+o[0]])){n===!0?n=a[r]:a[r]!==!0&&(i=o[0],u.splice(s--,0,i));break}if(n!==!0)if(n&&e["throws"])t=n(t);else try{t=n(t)}catch(c){return{state:"parsererror",error:n?c:"No conversion from "+l+" to "+i}}}l=i}return{state:"success",data:t}}function _(){try{return new e.XMLHttpRequest}catch(t){}}function F(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function O(){return setTimeout(function(){Qn=t}),Qn=st.now()}function B(e,t){st.each(t,function(t,n){for(var r=(rr[t]||[]).concat(rr["*"]),i=0,o=r.length;o>i;i++)if(r[i].call(e,t,n))return})}function P(e,t,n){var r,i,o=0,a=nr.length,s=st.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=Qn||O(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:st.extend({},t),opts:st.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Qn||O(),duration:n.duration,tweens:[],createTween:function(t,n){var r=st.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),c=l.props;for(R(c,l.opts.specialEasing);a>o;o++)if(r=nr[o].call(l,e,c,l.opts))return r;return B(l,c),st.isFunction(l.opts.start)&&l.opts.start.call(e,l),st.fx.timer(st.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function R(e,t){var n,r,i,o,a;for(n in e)if(r=st.camelCase(n),i=t[r],o=e[n],st.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=st.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function W(e,t,n){var r,i,o,a,s,u,l,c,f,p=this,d=e.style,h={},g=[],m=e.nodeType&&w(e);n.queue||(c=st._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,f=c.empty.fire,c.empty.fire=function(){c.unqueued||f()}),c.unqueued++,p.always(function(){p.always(function(){c.unqueued--,st.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===st.css(e,"display")&&"none"===st.css(e,"float")&&(st.support.inlineBlockNeedsLayout&&"inline"!==S(e.nodeName)?d.zoom=1:d.display="inline-block")),n.overflow&&(d.overflow="hidden",st.support.shrinkWrapBlocks||p.done(function(){d.overflow=n.overflow[0],d.overflowX=n.overflow[1],d.overflowY=n.overflow[2]}));for(r in t)if(o=t[r],Zn.exec(o)){if(delete t[r],u=u||"toggle"===o,o===(m?"hide":"show"))continue;g.push(r)}if(a=g.length){s=st._data(e,"fxshow")||st._data(e,"fxshow",{}),"hidden"in s&&(m=s.hidden),u&&(s.hidden=!m),m?st(e).show():p.done(function(){st(e).hide()}),p.done(function(){var t;st._removeData(e,"fxshow");for(t in h)st.style(e,t,h[t])});for(r=0;a>r;r++)i=g[r],l=p.createTween(i,m?s[i]:0),h[i]=s[i]||st.style(e,i),i in s||(s[i]=l.start,m&&(l.end=l.start,l.start="width"===i||"height"===i?1:0))}}function $(e,t,n,r,i){return new $.prototype.init(e,t,n,r,i)}function I(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=wn[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function z(e){return st.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}var X,U,V=e.document,Y=e.location,J=e.jQuery,G=e.$,Q={},K=[],Z="1.9.0",et=K.concat,tt=K.push,nt=K.slice,rt=K.indexOf,it=Q.toString,ot=Q.hasOwnProperty,at=Z.trim,st=function(e,t){return new st.fn.init(e,t,X)},ut=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,lt=/\S+/g,ct=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ft=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,pt=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,dt=/^[\],:{}\s]*$/,ht=/(?:^|:|,)(?:\s*\[)+/g,gt=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,mt=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,yt=/^-ms-/,vt=/-([\da-z])/gi,bt=function(e,t){return t.toUpperCase()},xt=function(){V.addEventListener?(V.removeEventListener("DOMContentLoaded",xt,!1),st.ready()):"complete"===V.readyState&&(V.detachEvent("onreadystatechange",xt),st.ready())};st.fn=st.prototype={jquery:Z,constructor:st,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:ft.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof st?n[0]:n,st.merge(this,st.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:V,!0)),pt.test(i[1])&&st.isPlainObject(n))for(i in n)st.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=V.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=V,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):st.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),st.makeArray(e,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return nt.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=st.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return st.each(this,e,t)},ready:function(e){return st.ready.promise().done(e),this},slice:function(){return this.pushStack(nt.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(st.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:tt,sort:[].sort,splice:[].splice},st.fn.init.prototype=st.fn,st.extend=st.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},u=1,l=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},u=2),"object"==typeof s||st.isFunction(s)||(s={}),l===u&&(s=this,--u);l>u;u++)if(null!=(e=arguments[u]))for(n in e)r=s[n],i=e[n],s!==i&&(c&&i&&(st.isPlainObject(i)||(o=st.isArray(i)))?(o?(o=!1,a=r&&st.isArray(r)?r:[]):a=r&&st.isPlainObject(r)?r:{},s[n]=st.extend(c,a,i)):i!==t&&(s[n]=i));return s},st.extend({noConflict:function(t){return e.$===st&&(e.$=G),t&&e.jQuery===st&&(e.jQuery=J),st},isReady:!1,readyWait:1,holdReady:function(e){e?st.readyWait++:st.ready(!0)},ready:function(e){if(e===!0?!--st.readyWait:!st.isReady){if(!V.body)return setTimeout(st.ready);st.isReady=!0,e!==!0&&--st.readyWait>0||(U.resolveWith(V,[st]),st.fn.trigger&&st(V).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===st.type(e)},isArray:Array.isArray||function(e){return"array"===st.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?Q[it.call(e)]||"object":typeof e},isPlainObject:function(e){if(!e||"object"!==st.type(e)||e.nodeType||st.isWindow(e))return!1;try{if(e.constructor&&!ot.call(e,"constructor")&&!ot.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||ot.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||V;var r=pt.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=st.buildFragment([e],t,i),i&&st(i).remove(),st.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=st.trim(n),n&&dt.test(n.replace(gt,"@").replace(mt,"]").replace(ht,"")))?Function("return "+n)():(st.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||st.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&st.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(yt,"ms-").replace(vt,bt)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,r){var i,o=0,a=e.length,s=n(e);if(r){if(s)for(;a>o&&(i=t.apply(e[o],r),i!==!1);o++);else for(o in e)if(i=t.apply(e[o],r),i===!1)break}else if(s)for(;a>o&&(i=t.call(e[o],o,e[o]),i!==!1);o++);else for(o in e)if(i=t.call(e[o],o,e[o]),i===!1)break;return e},trim:at&&!at.call("\ufeff\u00a0")?function(e){return null==e?"":at.call(e)}:function(e){return null==e?"":(e+"").replace(ct,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?st.merge(r,"string"==typeof e?[e]:e):tt.call(r,e)),r},inArray:function(e,t,n){var r;if(t){if(rt)return rt.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else for(;n[o]!==t;)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,r){var i,o=0,a=e.length,s=n(e),u=[];if(s)for(;a>o;o++)i=t(e[o],o,r),null!=i&&(u[u.length]=i);else for(o in e)i=t(e[o],o,r),null!=i&&(u[u.length]=i);return et.apply([],u)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(r=e[n],n=e,e=r),st.isFunction(e)?(i=nt.call(arguments,2),o=function(){return e.apply(n||this,i.concat(nt.call(arguments)))},o.guid=e.guid=e.guid||st.guid++,o):t},access:function(e,n,r,i,o,a,s){var u=0,l=e.length,c=null==r;if("object"===st.type(r)){o=!0;for(u in r)st.access(e,n,u,r[u],!0,a,s)}else if(i!==t&&(o=!0,st.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(st(e),n)})),n))for(;l>u;u++)n(e[u],r,s?i:i.call(e[u],u,n(e[u],r)));return o?e:c?n.call(e):l?n(e[0],r):a},now:function(){return(new Date).getTime()}}),st.ready.promise=function(t){if(!U)if(U=st.Deferred(),"complete"===V.readyState)setTimeout(st.ready);else if(V.addEventListener)V.addEventListener("DOMContentLoaded",xt,!1),e.addEventListener("load",st.ready,!1);else{V.attachEvent("onreadystatechange",xt),e.attachEvent("onload",st.ready);var n=!1;try{n=null==e.frameElement&&V.documentElement}catch(r){}n&&n.doScroll&&function i(){if(!st.isReady){try{n.doScroll("left")}catch(e){return setTimeout(i,50)}st.ready()}}()}return U.promise(t)},st.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Q["[object "+t+"]"]=t.toLowerCase()}),X=st(V);var Tt={};st.Callbacks=function(e){e="string"==typeof e?Tt[e]||r(e):st.extend({},e);var n,i,o,a,s,u,l=[],c=!e.once&&[],f=function(t){for(n=e.memory&&t,i=!0,u=a||0,a=0,s=l.length,o=!0;l&&s>u;u++)if(l[u].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}o=!1,l&&(c?c.length&&f(c.shift()):n?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function r(t){st.each(t,function(t,n){var i=st.type(n);"function"===i?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==i&&r(n)})})(arguments),o?s=l.length:n&&(a=t,f(n))}return this},remove:function(){return l&&st.each(arguments,function(e,t){for(var n;(n=st.inArray(t,l,n))>-1;)l.splice(n,1),o&&(s>=n&&s--,u>=n&&u--)}),this},has:function(e){return st.inArray(e,l)>-1},empty:function(){return l=[],this},disable:function(){return l=c=n=t,this},disabled:function(){return!l},lock:function(){return c=t,n||p.disable(),this},locked:function(){return!c},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!l||i&&!c||(o?c.push(t):f(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},st.extend({Deferred:function(e){var t=[["resolve","done",st.Callbacks("once memory"),"resolved"],["reject","fail",st.Callbacks("once memory"),"rejected"],["notify","progress",st.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return st.Deferred(function(n){st.each(t,function(t,o){var a=o[0],s=st.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&st.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?st.extend(e,r):r}},i={};return r.pipe=r.then,st.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=nt.call(arguments),a=o.length,s=1!==a||e&&st.isFunction(e.promise)?a:0,u=1===s?e:st.Deferred(),l=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?nt.call(arguments):i,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=Array(a),n=Array(a),r=Array(a);a>i;i++)o[i]&&st.isFunction(o[i].promise)?o[i].promise().done(l(i,r,o)).fail(u.reject).progress(l(i,n,t)):--s;return s||u.resolveWith(r,o),u.promise()}}),st.support=function(){var n,r,i,o,a,s,u,l,c,f,p=V.createElement("div");if(p.setAttribute("className","t"),p.innerHTML=" a ",r=p.getElementsByTagName("*"),i=p.getElementsByTagName("a")[0],!r||!i||!r.length)return{};o=V.createElement("select"),a=o.appendChild(V.createElement("option")),s=p.getElementsByTagName("input")[0],i.style.cssText="top:1px;float:left;opacity:.5",n={getSetAttribute:"t"!==p.className,leadingWhitespace:3===p.firstChild.nodeType,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(i.getAttribute("style")),hrefNormalized:"/a"===i.getAttribute("href"),opacity:/^0.5/.test(i.style.opacity),cssFloat:!!i.style.cssFloat,checkOn:!!s.value,optSelected:a.selected,enctype:!!V.createElement("form").enctype,html5Clone:"<:nav>"!==V.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===V.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},s.checked=!0,n.noCloneChecked=s.cloneNode(!0).checked,o.disabled=!0,n.optDisabled=!a.disabled;try{delete p.test}catch(d){n.deleteExpando=!1}s=V.createElement("input"),s.setAttribute("value",""),n.input=""===s.getAttribute("value"),s.value="t",s.setAttribute("type","radio"),n.radioValue="t"===s.value,s.setAttribute("checked","t"),s.setAttribute("name","t"),u=V.createDocumentFragment(),u.appendChild(s),n.appendChecked=s.checked,n.checkClone=u.cloneNode(!0).cloneNode(!0).lastChild.checked,p.attachEvent&&(p.attachEvent("onclick",function(){n.noCloneEvent=!1}),p.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})p.setAttribute(l="on"+f,"t"),n[f+"Bubbles"]=l in e||p.attributes[l].expando===!1;return p.style.backgroundClip="content-box",p.cloneNode(!0).style.backgroundClip="",n.clearCloneStyle="content-box"===p.style.backgroundClip,st(function(){var r,i,o,a="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",s=V.getElementsByTagName("body")[0];s&&(r=V.createElement("div"),r.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",s.appendChild(r).appendChild(p),p.innerHTML="",o=p.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",c=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",n.reliableHiddenOffsets=c&&0===o[0].offsetHeight,p.innerHTML="",p.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",n.boxSizing=4===p.offsetWidth,n.doesNotIncludeMarginInBodyOffset=1!==s.offsetTop,e.getComputedStyle&&(n.pixelPosition="1%"!==(e.getComputedStyle(p,null)||{}).top,n.boxSizingReliable="4px"===(e.getComputedStyle(p,null)||{width:"4px"}).width,i=p.appendChild(V.createElement("div")),i.style.cssText=p.style.cssText=a,i.style.marginRight=i.style.width="0",p.style.width="1px",n.reliableMarginRight=!parseFloat((e.getComputedStyle(i,null)||{}).marginRight)),p.style.zoom!==t&&(p.innerHTML="",p.style.cssText=a+"width:1px;padding:1px;display:inline;zoom:1",n.inlineBlockNeedsLayout=3===p.offsetWidth,p.style.display="block",p.innerHTML="
",p.firstChild.style.width="5px",n.shrinkWrapBlocks=3!==p.offsetWidth,s.style.zoom=1),s.removeChild(r),r=p=o=i=null)}),r=o=u=a=i=s=null,n}();var wt=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,Nt=/([A-Z])/g;st.extend({cache:{},expando:"jQuery"+(Z+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?st.cache[e[st.expando]]:e[st.expando],!!e&&!s(e)},data:function(e,t,n){return i(e,t,n,!1)},removeData:function(e,t){return o(e,t,!1)},_data:function(e,t,n){return i(e,t,n,!0)},_removeData:function(e,t){return o(e,t,!0)},acceptData:function(e){var t=e.nodeName&&st.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),st.fn.extend({data:function(e,n){var r,i,o=this[0],s=0,u=null;if(e===t){if(this.length&&(u=st.data(o),1===o.nodeType&&!st._data(o,"parsedAttrs"))){for(r=o.attributes;r.length>s;s++)i=r[s].name,i.indexOf("data-")||(i=st.camelCase(i.substring(5)),a(o,i,u[i]));st._data(o,"parsedAttrs",!0)}return u}return"object"==typeof e?this.each(function(){st.data(this,e)}):st.access(this,function(n){return n===t?o?a(o,e,st.data(o,e)):null:(this.each(function(){st.data(this,e,n)}),t)},null,n,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){st.removeData(this,e)})}}),st.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=st._data(e,n),r&&(!i||st.isArray(r)?i=st._data(e,n,st.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=st.queue(e,t),r=n.length,i=n.shift(),o=st._queueHooks(e,t),a=function(){st.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),o.cur=i,i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return st._data(e,n)||st._data(e,n,{empty:st.Callbacks("once memory").add(function(){st._removeData(e,t+"queue"),st._removeData(e,n)})})}}),st.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?st.queue(this[0],e):n===t?this:this.each(function(){var t=st.queue(this,e,n);st._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&st.dequeue(this,e)})},dequeue:function(e){return this.each(function(){st.dequeue(this,e)})},delay:function(e,t){return e=st.fx?st.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=st.Deferred(),a=this,s=this.length,u=function(){--i||o.resolveWith(a,[a])};for("string"!=typeof e&&(n=e,e=t),e=e||"fx";s--;)r=st._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(u));return u(),o.promise(n)}});var Ct,kt,Et=/[\t\r\n]/g,St=/\r/g,At=/^(?:input|select|textarea|button|object)$/i,jt=/^(?:a|area)$/i,Dt=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,Lt=/^(?:checked|selected)$/i,Ht=st.support.getSetAttribute,Mt=st.support.input;st.fn.extend({attr:function(e,t){return st.access(this,st.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){st.removeAttr(this,e)})},prop:function(e,t){return st.access(this,st.prop,e,t,arguments.length>1)},removeProp:function(e){return e=st.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,u="string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(lt)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(Et," "):" ")){for(o=0;i=t[o++];)0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=st.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,u=0===arguments.length||"string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).removeClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(lt)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(Et," "):"")){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");n.className=e?st.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e,r="boolean"==typeof t;return st.isFunction(e)?this.each(function(n){st(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var i,o=0,a=st(this),s=t,u=e.match(lt)||[];i=u[o++];)s=r?s:!a.hasClass(i),a[s?"addClass":"removeClass"](i);else("undefined"===n||"boolean"===n)&&(this.className&&st._data(this,"__className__",this.className),this.className=this.className||e===!1?"":st._data(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(Et," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=st.isFunction(e),this.each(function(r){var o,a=st(this);1===this.nodeType&&(o=i?e.call(this,r,a.val()):e,null==o?o="":"number"==typeof o?o+="":st.isArray(o)&&(o=st.map(o,function(e){return null==e?"":e+""})),n=st.valHooks[this.type]||st.valHooks[this.nodeName.toLowerCase()],n&&"set"in n&&n.set(this,o,"value")!==t||(this.value=o))});if(o)return n=st.valHooks[o.type]||st.valHooks[o.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(o,"value"))!==t?r:(r=o.value,"string"==typeof r?r.replace(St,""):null==r?"":r)}}}),st.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,u=0>i?s:o?i:0;s>u;u++)if(n=r[u],!(!n.selected&&u!==i||(st.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&st.nodeName(n.parentNode,"optgroup"))){if(t=st(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n=st.makeArray(t);return st(e).find("option").each(function(){this.selected=st.inArray(st(this).val(),n)>=0}),n.length||(e.selectedIndex=-1),n}}},attr:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return e.getAttribute===t?st.prop(e,n,r):(a=1!==s||!st.isXMLDoc(e),a&&(n=n.toLowerCase(),o=st.attrHooks[n]||(Dt.test(n)?kt:Ct)),r===t?o&&a&&"get"in o&&null!==(i=o.get(e,n))?i:(e.getAttribute!==t&&(i=e.getAttribute(n)),null==i?t:i):null!==r?o&&a&&"set"in o&&(i=o.set(e,r,n))!==t?i:(e.setAttribute(n,r+""),r):(st.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(lt);if(o&&1===e.nodeType)for(;n=o[i++];)r=st.propFix[n]||n,Dt.test(n)?!Ht&&Lt.test(n)?e[st.camelCase("default-"+n)]=e[r]=!1:e[r]=!1:st.attr(e,n,""),e.removeAttribute(Ht?n:r)},attrHooks:{type:{set:function(e,t){if(!st.support.radioValue&&"radio"===t&&st.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!st.isXMLDoc(e),a&&(n=st.propFix[n]||n,o=st.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var n=e.getAttributeNode("tabindex");return n&&n.specified?parseInt(n.value,10):At.test(e.nodeName)||jt.test(e.nodeName)&&e.href?0:t}}}}),kt={get:function(e,n){var r=st.prop(e,n),i="boolean"==typeof r&&e.getAttribute(n),o="boolean"==typeof r?Mt&&Ht?null!=i:Lt.test(n)?e[st.camelCase("default-"+n)]:!!i:e.getAttributeNode(n);return o&&o.value!==!1?n.toLowerCase():t},set:function(e,t,n){return t===!1?st.removeAttr(e,n):Mt&&Ht||!Lt.test(n)?e.setAttribute(!Ht&&st.propFix[n]||n,n):e[st.camelCase("default-"+n)]=e[n]=!0,n}},Mt&&Ht||(st.attrHooks.value={get:function(e,n){var r=e.getAttributeNode(n);return st.nodeName(e,"input")?e.defaultValue:r&&r.specified?r.value:t
+},set:function(e,n,r){return st.nodeName(e,"input")?(e.defaultValue=n,t):Ct&&Ct.set(e,n,r)}}),Ht||(Ct=st.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&("id"===n||"name"===n||"coords"===n?""!==r.value:r.specified)?r.value:t},set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},st.attrHooks.contenteditable={get:Ct.get,set:function(e,t,n){Ct.set(e,""===t?!1:t,n)}},st.each(["width","height"],function(e,n){st.attrHooks[n]=st.extend(st.attrHooks[n],{set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}})})),st.support.hrefNormalized||(st.each(["href","src","width","height"],function(e,n){st.attrHooks[n]=st.extend(st.attrHooks[n],{get:function(e){var r=e.getAttribute(n,2);return null==r?t:r}})}),st.each(["href","src"],function(e,t){st.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}})),st.support.style||(st.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),st.support.optSelected||(st.propHooks.selected=st.extend(st.propHooks.selected,{get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}})),st.support.enctype||(st.propFix.enctype="encoding"),st.support.checkOn||st.each(["radio","checkbox"],function(){st.valHooks[this]={get:function(e){return null===e.getAttribute("value")?"on":e.value}}}),st.each(["radio","checkbox"],function(){st.valHooks[this]=st.extend(st.valHooks[this],{set:function(e,n){return st.isArray(n)?e.checked=st.inArray(st(e).val(),n)>=0:t}})});var qt=/^(?:input|select|textarea)$/i,_t=/^key/,Ft=/^(?:mouse|contextmenu)|click/,Ot=/^(?:focusinfocus|focusoutblur)$/,Bt=/^([^.]*)(?:\.(.+)|)$/;st.event={global:{},add:function(e,n,r,i,o){var a,s,u,l,c,f,p,d,h,g,m,y=3!==e.nodeType&&8!==e.nodeType&&st._data(e);if(y){for(r.handler&&(a=r,r=a.handler,o=a.selector),r.guid||(r.guid=st.guid++),(l=y.events)||(l=y.events={}),(s=y.handle)||(s=y.handle=function(e){return st===t||e&&st.event.triggered===e.type?t:st.event.dispatch.apply(s.elem,arguments)},s.elem=e),n=(n||"").match(lt)||[""],c=n.length;c--;)u=Bt.exec(n[c])||[],h=m=u[1],g=(u[2]||"").split(".").sort(),p=st.event.special[h]||{},h=(o?p.delegateType:p.bindType)||h,p=st.event.special[h]||{},f=st.extend({type:h,origType:m,data:i,handler:r,guid:r.guid,selector:o,needsContext:o&&st.expr.match.needsContext.test(o),namespace:g.join(".")},a),(d=l[h])||(d=l[h]=[],d.delegateCount=0,p.setup&&p.setup.call(e,i,g,s)!==!1||(e.addEventListener?e.addEventListener(h,s,!1):e.attachEvent&&e.attachEvent("on"+h,s))),p.add&&(p.add.call(e,f),f.handler.guid||(f.handler.guid=r.guid)),o?d.splice(d.delegateCount++,0,f):d.push(f),st.event.global[h]=!0;e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,m=st.hasData(e)&&st._data(e);if(m&&(u=m.events)){for(t=(t||"").match(lt)||[""],l=t.length;l--;)if(s=Bt.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){for(f=st.event.special[d]||{},d=(r?f.delegateType:f.bindType)||d,p=u[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&f.teardown.call(e,h,m.handle)!==!1||st.removeEvent(e,d,m.handle),delete u[d])}else for(d in u)st.event.remove(e,d+t[l],n,r,!0);st.isEmptyObject(u)&&(delete m.handle,st._removeData(e,"events"))}},trigger:function(n,r,i,o){var a,s,u,l,c,f,p,d=[i||V],h=n.type||n,g=n.namespace?n.namespace.split("."):[];if(s=u=i=i||V,3!==i.nodeType&&8!==i.nodeType&&!Ot.test(h+st.event.triggered)&&(h.indexOf(".")>=0&&(g=h.split("."),h=g.shift(),g.sort()),c=0>h.indexOf(":")&&"on"+h,n=n[st.expando]?n:new st.Event(h,"object"==typeof n&&n),n.isTrigger=!0,n.namespace=g.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:st.makeArray(r,[n]),p=st.event.special[h]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!st.isWindow(i)){for(l=p.delegateType||h,Ot.test(l+h)||(s=s.parentNode);s;s=s.parentNode)d.push(s),u=s;u===(i.ownerDocument||V)&&d.push(u.defaultView||u.parentWindow||e)}for(a=0;(s=d[a++])&&!n.isPropagationStopped();)n.type=a>1?l:p.bindType||h,f=(st._data(s,"events")||{})[n.type]&&st._data(s,"handle"),f&&f.apply(s,r),f=c&&s[c],f&&st.acceptData(s)&&f.apply&&f.apply(s,r)===!1&&n.preventDefault();if(n.type=h,!(o||n.isDefaultPrevented()||p._default&&p._default.apply(i.ownerDocument,r)!==!1||"click"===h&&st.nodeName(i,"a")||!st.acceptData(i)||!c||!i[h]||st.isWindow(i))){u=i[c],u&&(i[c]=null),st.event.triggered=h;try{i[h]()}catch(m){}st.event.triggered=t,u&&(i[c]=u)}return n.result}},dispatch:function(e){e=st.event.fix(e);var n,r,i,o,a,s=[],u=nt.call(arguments),l=(st._data(this,"events")||{})[e.type]||[],c=st.event.special[e.type]||{};if(u[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){for(s=st.event.handlers.call(this,e,l),n=0;(o=s[n++])&&!e.isPropagationStopped();)for(e.currentTarget=o.elem,r=0;(a=o.handlers[r++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(a.namespace))&&(e.handleObj=a,e.data=a.data,i=((st.event.special[a.origType]||{}).handle||a.handler).apply(o.elem,u),i!==t&&(e.result=i)===!1&&(e.preventDefault(),e.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],u=n.delegateCount,l=e.target;if(u&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!=this;l=l.parentNode||this)if(l.disabled!==!0||"click"!==e.type){for(i=[],r=0;u>r;r++)a=n[r],o=a.selector+" ",i[o]===t&&(i[o]=a.needsContext?st(o,this).index(l)>=0:st.find(o,this,null,[l]).length),i[o]&&i.push(a);i.length&&s.push({elem:l,handlers:i})}return n.length>u&&s.push({elem:this,handlers:n.slice(u)}),s},fix:function(e){if(e[st.expando])return e;var t,n,r=e,i=st.event.fixHooks[e.type]||{},o=i.props?this.props.concat(i.props):this.props;for(e=new st.Event(r),t=o.length;t--;)n=o[t],e[n]=r[n];return e.target||(e.target=r.srcElement||V),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,i.filter?i.filter(e,r):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,a=n.button,s=n.fromElement;return null==e.pageX&&null!=n.clientX&&(r=e.target.ownerDocument||V,i=r.documentElement,o=r.body,e.pageX=n.clientX+(i&&i.scrollLeft||o&&o.scrollLeft||0)-(i&&i.clientLeft||o&&o.clientLeft||0),e.pageY=n.clientY+(i&&i.scrollTop||o&&o.scrollTop||0)-(i&&i.clientTop||o&&o.clientTop||0)),!e.relatedTarget&&s&&(e.relatedTarget=s===e.target?n.toElement:s),e.which||a===t||(e.which=1&a?1:2&a?3:4&a?2:0),e}},special:{load:{noBubble:!0},click:{trigger:function(){return st.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t}},focus:{trigger:function(){if(this!==V.activeElement&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===V.activeElement&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=st.extend(new st.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?st.event.trigger(i,null,t):st.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},st.removeEvent=V.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,n,r){var i="on"+n;e.detachEvent&&(e[i]===t&&(e[i]=null),e.detachEvent(i,r))},st.Event=function(e,n){return this instanceof st.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?u:l):this.type=e,n&&st.extend(this,n),this.timeStamp=e&&e.timeStamp||st.now(),this[st.expando]=!0,t):new st.Event(e,n)},st.Event.prototype={isDefaultPrevented:l,isPropagationStopped:l,isImmediatePropagationStopped:l,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=u,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=u,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u,this.stopPropagation()}},st.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){st.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!st.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),st.support.submitBubbles||(st.event.special.submit={setup:function(){return st.nodeName(this,"form")?!1:(st.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=st.nodeName(n,"input")||st.nodeName(n,"button")?n.form:t;r&&!st._data(r,"submitBubbles")&&(st.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),st._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&st.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return st.nodeName(this,"form")?!1:(st.event.remove(this,"._submit"),t)}}),st.support.changeBubbles||(st.event.special.change={setup:function(){return qt.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(st.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),st.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),st.event.simulate("change",this,e,!0)})),!1):(st.event.add(this,"beforeactivate._change",function(e){var t=e.target;qt.test(t.nodeName)&&!st._data(t,"changeBubbles")&&(st.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||st.event.simulate("change",this.parentNode,e,!0)}),st._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return st.event.remove(this,"._change"),!qt.test(this.nodeName)}}),st.support.focusinBubbles||st.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){st.event.simulate(t,e.target,st.event.fix(e),!0)};st.event.special[t]={setup:function(){0===n++&&V.addEventListener(e,r,!0)},teardown:function(){0===--n&&V.removeEventListener(e,r,!0)}}}),st.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(s in e)this.on(s,n,r,e[s],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=l;else if(!i)return this;return 1===o&&(a=i,i=function(e){return st().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=st.guid++)),this.each(function(){st.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,st(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=l),this.each(function(){st.event.remove(this,e,r,n)})},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},trigger:function(e,t){return this.each(function(){st.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?st.event.trigger(e,n,r,!0):t},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),st.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){st.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)},_t.test(t)&&(st.event.fixHooks[t]=st.event.keyHooks),Ft.test(t)&&(st.event.fixHooks[t]=st.event.mouseHooks)}),function(e,t){function n(e){return ht.test(e+"")}function r(){var e,t=[];return e=function(n,r){return t.push(n+=" ")>C.cacheLength&&delete e[t.shift()],e[n]=r}}function i(e){return e[P]=!0,e}function o(e){var t=L.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}}function a(e,t,n,r){var i,o,a,s,u,l,c,d,h,g;if((t?t.ownerDocument||t:R)!==L&&D(t),t=t||L,n=n||[],!e||"string"!=typeof e)return n;if(1!==(s=t.nodeType)&&9!==s)return[];if(!M&&!r){if(i=gt.exec(e))if(a=i[1]){if(9===s){if(o=t.getElementById(a),!o||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(a))&&O(t,o)&&o.id===a)return n.push(o),n}else{if(i[2])return Q.apply(n,K.call(t.getElementsByTagName(e),0)),n;if((a=i[3])&&W.getByClassName&&t.getElementsByClassName)return Q.apply(n,K.call(t.getElementsByClassName(a),0)),n}if(W.qsa&&!q.test(e)){if(c=!0,d=P,h=t,g=9===s&&e,1===s&&"object"!==t.nodeName.toLowerCase()){for(l=f(e),(c=t.getAttribute("id"))?d=c.replace(vt,"\\$&"):t.setAttribute("id",d),d="[id='"+d+"'] ",u=l.length;u--;)l[u]=d+p(l[u]);h=dt.test(e)&&t.parentNode||t,g=l.join(",")}if(g)try{return Q.apply(n,K.call(h.querySelectorAll(g),0)),n}catch(m){}finally{c||t.removeAttribute("id")}}}return x(e.replace(at,"$1"),t,n,r)}function s(e,t){for(var n=e&&t&&e.nextSibling;n;n=n.nextSibling)if(n===t)return-1;return e?1:-1}function u(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function c(e){return i(function(t){return t=+t,i(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function f(e,t){var n,r,i,o,s,u,l,c=X[e+" "];if(c)return t?0:c.slice(0);for(s=e,u=[],l=C.preFilter;s;){(!n||(r=ut.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),u.push(i=[])),n=!1,(r=lt.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(at," ")}),s=s.slice(n.length));for(o in C.filter)!(r=pt[o].exec(s))||l[o]&&!(r=l[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?a.error(e):X(e,u).slice(0)}function p(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function d(e,t,n){var r=t.dir,i=n&&"parentNode"===t.dir,o=I++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,u,l,c=$+" "+o;if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i)if(l=t[P]||(t[P]={}),(u=l[r])&&u[0]===c){if((s=u[1])===!0||s===N)return s===!0}else if(u=l[r]=[c],u[1]=e(t,n,a)||N,u[1]===!0)return!0}}function h(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function g(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function m(e,t,n,r,o,a){return r&&!r[P]&&(r=m(r)),o&&!o[P]&&(o=m(o,a)),i(function(i,a,s,u){var l,c,f,p=[],d=[],h=a.length,m=i||b(t||"*",s.nodeType?[s]:s,[]),y=!e||!i&&t?m:g(m,p,e,s,u),v=n?o||(i?e:h||r)?[]:a:y;if(n&&n(y,v,s,u),r)for(l=g(v,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(v[d[c]]=!(y[d[c]]=f));if(i){if(o||e){if(o){for(l=[],c=v.length;c--;)(f=v[c])&&l.push(y[c]=f);o(null,v=[],l,u)}for(c=v.length;c--;)(f=v[c])&&(l=o?Z.call(i,f):p[c])>-1&&(i[l]=!(a[l]=f))}}else v=g(v===a?v.splice(h,v.length):v),o?o(null,a,v,u):Q.apply(a,v)})}function y(e){for(var t,n,r,i=e.length,o=C.relative[e[0].type],a=o||C.relative[" "],s=o?1:0,u=d(function(e){return e===t},a,!0),l=d(function(e){return Z.call(t,e)>-1},a,!0),c=[function(e,n,r){return!o&&(r||n!==j)||((t=n).nodeType?u(e,n,r):l(e,n,r))}];i>s;s++)if(n=C.relative[e[s].type])c=[d(h(c),n)];else{if(n=C.filter[e[s].type].apply(null,e[s].matches),n[P]){for(r=++s;i>r&&!C.relative[e[r].type];r++);return m(s>1&&h(c),s>1&&p(e.slice(0,s-1)).replace(at,"$1"),n,r>s&&y(e.slice(s,r)),i>r&&y(e=e.slice(r)),i>r&&p(e))}c.push(n)}return h(c)}function v(e,t){var n=0,r=t.length>0,o=e.length>0,s=function(i,s,u,l,c){var f,p,d,h=[],m=0,y="0",v=i&&[],b=null!=c,x=j,T=i||o&&C.find.TAG("*",c&&s.parentNode||s),w=$+=null==x?1:Math.E;for(b&&(j=s!==L&&s,N=n);null!=(f=T[y]);y++){if(o&&f){for(p=0;d=e[p];p++)if(d(f,s,u)){l.push(f);break}b&&($=w,N=++n)}r&&((f=!d&&f)&&m--,i&&v.push(f))}if(m+=y,r&&y!==m){for(p=0;d=t[p];p++)d(v,h,s,u);if(i){if(m>0)for(;y--;)v[y]||h[y]||(h[y]=G.call(l));h=g(h)}Q.apply(l,h),b&&!i&&h.length>0&&m+t.length>1&&a.uniqueSort(l)}return b&&($=w,j=x),v};return r?i(s):s}function b(e,t,n){for(var r=0,i=t.length;i>r;r++)a(e,t[r],n);return n}function x(e,t,n,r){var i,o,a,s,u,l=f(e);if(!r&&1===l.length){if(o=l[0]=l[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&!M&&C.relative[o[1].type]){if(t=C.find.ID(a.matches[0].replace(xt,Tt),t)[0],!t)return n;e=e.slice(o.shift().value.length)}for(i=pt.needsContext.test(e)?-1:o.length-1;i>=0&&(a=o[i],!C.relative[s=a.type]);i--)if((u=C.find[s])&&(r=u(a.matches[0].replace(xt,Tt),dt.test(o[0].type)&&t.parentNode||t))){if(o.splice(i,1),e=r.length&&p(o),!e)return Q.apply(n,K.call(r,0)),n;break}}return S(e,l)(r,t,M,n,dt.test(e)),n}function T(){}var w,N,C,k,E,S,A,j,D,L,H,M,q,_,F,O,B,P="sizzle"+-new Date,R=e.document,W={},$=0,I=0,z=r(),X=r(),U=r(),V=typeof t,Y=1<<31,J=[],G=J.pop,Q=J.push,K=J.slice,Z=J.indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(this[t]===e)return t;return-1},et="[\\x20\\t\\r\\n\\f]",tt="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",nt=tt.replace("w","w#"),rt="([*^$|!~]?=)",it="\\["+et+"*("+tt+")"+et+"*(?:"+rt+et+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+nt+")|)|)"+et+"*\\]",ot=":("+tt+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+it.replace(3,8)+")*)|.*)\\)|)",at=RegExp("^"+et+"+|((?:^|[^\\\\])(?:\\\\.)*)"+et+"+$","g"),ut=RegExp("^"+et+"*,"+et+"*"),lt=RegExp("^"+et+"*([\\x20\\t\\r\\n\\f>+~])"+et+"*"),ct=RegExp(ot),ft=RegExp("^"+nt+"$"),pt={ID:RegExp("^#("+tt+")"),CLASS:RegExp("^\\.("+tt+")"),NAME:RegExp("^\\[name=['\"]?("+tt+")['\"]?\\]"),TAG:RegExp("^("+tt.replace("w","w*")+")"),ATTR:RegExp("^"+it),PSEUDO:RegExp("^"+ot),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+et+"*(even|odd|(([+-]|)(\\d*)n|)"+et+"*(?:([+-]|)"+et+"*(\\d+)|))"+et+"*\\)|)","i"),needsContext:RegExp("^"+et+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+et+"*((?:-\\d)?\\d*)"+et+"*\\)|)(?=[^-]|$)","i")},dt=/[\x20\t\r\n\f]*[+~]/,ht=/\{\s*\[native code\]\s*\}/,gt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,mt=/^(?:input|select|textarea|button)$/i,yt=/^h\d$/i,vt=/'|\\/g,bt=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,xt=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,Tt=function(e,t){var n="0x"+t-65536;return n!==n?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(55296|n>>10,56320|1023&n)};try{K.call(H.childNodes,0)[0].nodeType}catch(wt){K=function(e){for(var t,n=[];t=this[e];e++)n.push(t);return n}}E=a.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},D=a.setDocument=function(e){var r=e?e.ownerDocument||e:R;return r!==L&&9===r.nodeType&&r.documentElement?(L=r,H=r.documentElement,M=E(r),W.tagNameNoComments=o(function(e){return e.appendChild(r.createComment("")),!e.getElementsByTagName("*").length}),W.attributes=o(function(e){e.innerHTML=" ";var t=typeof e.lastChild.getAttribute("multiple");return"boolean"!==t&&"string"!==t}),W.getByClassName=o(function(e){return e.innerHTML="
",e.getElementsByClassName&&e.getElementsByClassName("e").length?(e.lastChild.className="e",2===e.getElementsByClassName("e").length):!1}),W.getByName=o(function(e){e.id=P+0,e.innerHTML="
",H.insertBefore(e,H.firstChild);var t=r.getElementsByName&&r.getElementsByName(P).length===2+r.getElementsByName(P+0).length;return W.getIdNotName=!r.getElementById(P),H.removeChild(e),t}),C.attrHandle=o(function(e){return e.innerHTML=" ",e.firstChild&&typeof e.firstChild.getAttribute!==V&&"#"===e.firstChild.getAttribute("href")})?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},W.getIdNotName?(C.find.ID=function(e,t){if(typeof t.getElementById!==V&&!M){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},C.filter.ID=function(e){var t=e.replace(xt,Tt);return function(e){return e.getAttribute("id")===t}}):(C.find.ID=function(e,n){if(typeof n.getElementById!==V&&!M){var r=n.getElementById(e);return r?r.id===e||typeof r.getAttributeNode!==V&&r.getAttributeNode("id").value===e?[r]:t:[]}},C.filter.ID=function(e){var t=e.replace(xt,Tt);return function(e){var n=typeof e.getAttributeNode!==V&&e.getAttributeNode("id");return n&&n.value===t}}),C.find.TAG=W.tagNameNoComments?function(e,n){return typeof n.getElementsByTagName!==V?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i];i++)1===n.nodeType&&r.push(n);return r}return o},C.find.NAME=W.getByName&&function(e,n){return typeof n.getElementsByName!==V?n.getElementsByName(name):t},C.find.CLASS=W.getByClassName&&function(e,n){return typeof n.getElementsByClassName===V||M?t:n.getElementsByClassName(e)},_=[],q=[":focus"],(W.qsa=n(r.querySelectorAll))&&(o(function(e){e.innerHTML=" ",e.querySelectorAll("[selected]").length||q.push("\\["+et+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||q.push(":checked")}),o(function(e){e.innerHTML=" ",e.querySelectorAll("[i^='']").length&&q.push("[*^$]="+et+"*(?:\"\"|'')"),e.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),q.push(",.*:")})),(W.matchesSelector=n(F=H.matchesSelector||H.mozMatchesSelector||H.webkitMatchesSelector||H.oMatchesSelector||H.msMatchesSelector))&&o(function(e){W.disconnectedMatch=F.call(e,"div"),F.call(e,"[s!='']:x"),_.push("!=",ot)}),q=RegExp(q.join("|")),_=RegExp(_.join("|")),O=n(H.contains)||H.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},B=H.compareDocumentPosition?function(e,t){var n;return e===t?(A=!0,0):(n=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t))?1&n||e.parentNode&&11===e.parentNode.nodeType?e===r||O(R,e)?-1:t===r||O(R,t)?1:0:4&n?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var n,i=0,o=e.parentNode,a=t.parentNode,u=[e],l=[t];if(e===t)return A=!0,0;if(e.sourceIndex&&t.sourceIndex)return(~t.sourceIndex||Y)-(O(R,e)&&~e.sourceIndex||Y);if(!o||!a)return e===r?-1:t===r?1:o?-1:a?1:0;if(o===a)return s(e,t);for(n=e;n=n.parentNode;)u.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;u[i]===l[i];)i++;return i?s(u[i],l[i]):u[i]===R?-1:l[i]===R?1:0},A=!1,[0,0].sort(B),W.detectDuplicates=A,L):L},a.matches=function(e,t){return a(e,null,null,t)},a.matchesSelector=function(e,t){if((e.ownerDocument||e)!==L&&D(e),t=t.replace(bt,"='$1']"),!(!W.matchesSelector||M||_&&_.test(t)||q.test(t)))try{var n=F.call(e,t);if(n||W.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return a(t,L,null,[e]).length>0},a.contains=function(e,t){return(e.ownerDocument||e)!==L&&D(e),O(e,t)},a.attr=function(e,t){var n;return(e.ownerDocument||e)!==L&&D(e),M||(t=t.toLowerCase()),(n=C.attrHandle[t])?n(e):M||W.attributes?e.getAttribute(t):((n=e.getAttributeNode(t))||e.getAttribute(t))&&e[t]===!0?t:n&&n.specified?n.value:null},a.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},a.uniqueSort=function(e){var t,n=[],r=1,i=0;if(A=!W.detectDuplicates,e.sort(B),A){for(;t=e[r];r++)t===e[r-1]&&(i=n.push(r));for(;i--;)e.splice(n[i],1)}return e},k=a.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=k(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=k(t);return n},C=a.selectors={cacheLength:50,createPseudo:i,match:pt,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(xt,Tt),e[3]=(e[4]||e[5]||"").replace(xt,Tt),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||a.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&a.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return pt.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&ct.test(n)&&(t=f(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){return"*"===e?function(){return!0}:(e=e.replace(xt,Tt).toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=z[e+" "];return t||(t=RegExp("(^|"+et+")"+e+"("+et+"|$)"))&&z(e,function(e){return t.test(e.className||typeof e.getAttribute!==V&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=a.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.substr(i.length-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!s;if(m){if(o){for(;g;){for(f=t;f=f[g];)if(s?f.nodeName.toLowerCase()===y:1===f.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){for(c=m[P]||(m[P]={}),l=c[e]||[],d=l[0]===$&&l[1],p=l[0]===$&&l[2],f=d&&m.childNodes[d];f=++d&&f&&f[g]||(p=d=0)||h.pop();)if(1===f.nodeType&&++p&&f===t){c[e]=[$,d,p];break}}else if(v&&(l=(t[P]||(t[P]={}))[e])&&l[0]===$)p=l[1];else for(;(f=++d&&f&&f[g]||(p=d=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==y:1!==f.nodeType)||!++p||(v&&((f[P]||(f[P]={}))[e]=[$,p]),f!==t)););return p-=i,p===r||0===p%r&&p/r>=0}}},PSEUDO:function(e,t){var n,r=C.pseudos[e]||C.setFilters[e.toLowerCase()]||a.error("unsupported pseudo: "+e);return r[P]?r(t):r.length>1?(n=[e,e,"",t],C.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,n){for(var i,o=r(e,t),a=o.length;a--;)i=Z.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:i(function(e){var t=[],n=[],r=S(e.replace(at,"$1"));return r[P]?i(function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:i(function(e){return function(t){return a(e,t).length>0}}),contains:i(function(e){return function(t){return(t.textContent||t.innerText||k(t)).indexOf(e)>-1}}),lang:i(function(e){return ft.test(e||"")||a.error("unsupported lang: "+e),e=e.replace(xt,Tt).toLowerCase(),function(t){var n;do if(n=M?t.getAttribute("xml:lang")||t.getAttribute("lang"):t.lang)return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===H},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!C.pseudos.empty(e)},header:function(e){return yt.test(e.nodeName)},input:function(e){return mt.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[0>n?n+t:n]}),even:c(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:c(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:c(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:c(function(e,t,n){for(var r=0>n?n+t:n;t>++r;)e.push(r);return e})}};for(w in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[w]=u(w);for(w in{submit:!0,reset:!0})C.pseudos[w]=l(w);S=a.compile=function(e,t){var n,r=[],i=[],o=U[e+" "];if(!o){for(t||(t=f(e)),n=t.length;n--;)o=y(t[n]),o[P]?r.push(o):i.push(o);o=U(e,v(i,r))}return o},C.pseudos.nth=C.pseudos.eq,C.filters=T.prototype=C.pseudos,C.setFilters=new T,D(),a.attr=st.attr,st.find=a,st.expr=a.selectors,st.expr[":"]=st.expr.pseudos,st.unique=a.uniqueSort,st.text=a.getText,st.isXMLDoc=a.isXML,st.contains=a.contains}(e);var Pt=/Until$/,Rt=/^(?:parents|prev(?:Until|All))/,Wt=/^.[^:#\[\.,]*$/,$t=st.expr.match.needsContext,It={children:!0,contents:!0,next:!0,prev:!0};st.fn.extend({find:function(e){var t,n,r;if("string"!=typeof e)return r=this,this.pushStack(st(e).filter(function(){for(t=0;r.length>t;t++)if(st.contains(r[t],this))return!0}));for(n=[],t=0;this.length>t;t++)st.find(e,this[t],n);return n=this.pushStack(st.unique(n)),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t,n=st(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(st.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(f(this,e,!1))},filter:function(e){return this.pushStack(f(this,e,!0))},is:function(e){return!!e&&("string"==typeof e?$t.test(e)?st(e,this.context).index(this[0])>=0:st.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=$t.test(e)||"string"!=typeof e?st(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n.ownerDocument&&n!==t&&11!==n.nodeType;){if(a?a.index(n)>-1:st.find.matchesSelector(n,e)){o.push(n);break}n=n.parentNode}return this.pushStack(o.length>1?st.unique(o):o)},index:function(e){return e?"string"==typeof e?st.inArray(this[0],st(e)):st.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?st(e,t):st.makeArray(e&&e.nodeType?[e]:e),r=st.merge(this.get(),n);return this.pushStack(st.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),st.fn.andSelf=st.fn.addBack,st.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return st.dir(e,"parentNode")},parentsUntil:function(e,t,n){return st.dir(e,"parentNode",n)},next:function(e){return c(e,"nextSibling")},prev:function(e){return c(e,"previousSibling")
+},nextAll:function(e){return st.dir(e,"nextSibling")},prevAll:function(e){return st.dir(e,"previousSibling")},nextUntil:function(e,t,n){return st.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return st.dir(e,"previousSibling",n)},siblings:function(e){return st.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return st.sibling(e.firstChild)},contents:function(e){return st.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:st.merge([],e.childNodes)}},function(e,t){st.fn[e]=function(n,r){var i=st.map(this,t,n);return Pt.test(e)||(r=n),r&&"string"==typeof r&&(i=st.filter(r,i)),i=this.length>1&&!It[e]?st.unique(i):i,this.length>1&&Rt.test(e)&&(i=i.reverse()),this.pushStack(i)}}),st.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),1===t.length?st.find.matchesSelector(t[0],e)?[t[0]]:[]:st.find.matches(e,t)},dir:function(e,n,r){for(var i=[],o=e[n];o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!st(o).is(r));)1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});var zt="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",Xt=/ jQuery\d+="(?:null|\d+)"/g,Ut=RegExp("<(?:"+zt+")[\\s/>]","i"),Vt=/^\s+/,Yt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Jt=/<([\w:]+)/,Gt=/\s*$/g,on={option:[1,""," "],legend:[1,""," "],area:[1,""," "],param:[1,""," "],thead:[1,""],tr:[2,""],col:[2,""],td:[3,""],_default:st.support.htmlSerialize?[0,"",""]:[1,"X","
"]},an=p(V),sn=an.appendChild(V.createElement("div"));on.optgroup=on.option,on.tbody=on.tfoot=on.colgroup=on.caption=on.thead,on.th=on.td,st.fn.extend({text:function(e){return st.access(this,function(e){return e===t?st.text(this):this.empty().append((this[0]&&this[0].ownerDocument||V).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(st.isFunction(e))return this.each(function(t){st(this).wrapAll(e.call(this,t))});if(this[0]){var t=st(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return st.isFunction(e)?this.each(function(t){st(this).wrapInner(e.call(this,t))}):this.each(function(){var t=st(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=st.isFunction(e);return this.each(function(n){st(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){st.nodeName(this,"body")||st(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.insertBefore(e,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=0;null!=(n=this[r]);r++)(!e||st.filter(e,[n]).length>0)&&(t||1!==n.nodeType||st.cleanData(b(n)),n.parentNode&&(t&&st.contains(n.ownerDocument,n)&&m(b(n,"script")),n.parentNode.removeChild(n)));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&st.cleanData(b(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&st.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return st.clone(this,e,t)})},html:function(e){return st.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(Xt,""):t;if(!("string"!=typeof e||Kt.test(e)||!st.support.htmlSerialize&&Ut.test(e)||!st.support.leadingWhitespace&&Vt.test(e)||on[(Jt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(Yt,"<$1>$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(st.cleanData(b(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(e){var t=st.isFunction(e);return t||"string"==typeof e||(e=st(e).not(this).detach()),this.domManip([e],!0,function(e){var t=this.nextSibling,n=this.parentNode;(n&&1===this.nodeType||11===this.nodeType)&&(st(this).remove(),t?t.parentNode.insertBefore(e,t):n.appendChild(e))})},detach:function(e){return this.remove(e,!0)},domManip:function(e,n,r){e=et.apply([],e);var i,o,a,s,u,l,c=0,f=this.length,p=this,m=f-1,y=e[0],v=st.isFunction(y);if(v||!(1>=f||"string"!=typeof y||st.support.checkClone)&&en.test(y))return this.each(function(i){var o=p.eq(i);v&&(e[0]=y.call(this,i,n?o.html():t)),o.domManip(e,n,r)});if(f&&(i=st.buildFragment(e,this[0].ownerDocument,!1,this),o=i.firstChild,1===i.childNodes.length&&(i=o),o)){for(n=n&&st.nodeName(o,"tr"),a=st.map(b(i,"script"),h),s=a.length;f>c;c++)u=i,c!==m&&(u=st.clone(u,!0,!0),s&&st.merge(a,b(u,"script"))),r.call(n&&st.nodeName(this[c],"table")?d(this[c],"tbody"):this[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,st.map(a,g),c=0;s>c;c++)u=a[c],tn.test(u.type||"")&&!st._data(u,"globalEval")&&st.contains(l,u)&&(u.src?st.ajax({url:u.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):st.globalEval((u.text||u.textContent||u.innerHTML||"").replace(rn,"")));i=o=null}return this}}),st.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){st.fn[e]=function(e){for(var n,r=0,i=[],o=st(e),a=o.length-1;a>=r;r++)n=r===a?this:this.clone(!0),st(o[r])[t](n),tt.apply(i,n.get());return this.pushStack(i)}}),st.extend({clone:function(e,t,n){var r,i,o,a,s,u=st.contains(e.ownerDocument,e);if(st.support.html5Clone||st.isXMLDoc(e)||!Ut.test("<"+e.nodeName+">")?s=e.cloneNode(!0):(sn.innerHTML=e.outerHTML,sn.removeChild(s=sn.firstChild)),!(st.support.noCloneEvent&&st.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||st.isXMLDoc(e)))for(r=b(s),i=b(e),a=0;null!=(o=i[a]);++a)r[a]&&v(o,r[a]);if(t)if(n)for(i=i||b(e),r=r||b(s),a=0;null!=(o=i[a]);a++)y(o,r[a]);else y(e,s);return r=b(s,"script"),r.length>0&&m(r,!u&&b(e,"script")),r=i=o=null,s},buildFragment:function(e,t,n,r){for(var i,o,a,s,u,l,c,f=e.length,d=p(t),h=[],g=0;f>g;g++)if(o=e[g],o||0===o)if("object"===st.type(o))st.merge(h,o.nodeType?[o]:o);else if(Qt.test(o)){for(s=s||d.appendChild(t.createElement("div")),a=(Jt.exec(o)||["",""])[1].toLowerCase(),u=on[a]||on._default,s.innerHTML=u[1]+o.replace(Yt,"<$1>$2>")+u[2],c=u[0];c--;)s=s.lastChild;if(!st.support.leadingWhitespace&&Vt.test(o)&&h.push(t.createTextNode(Vt.exec(o)[0])),!st.support.tbody)for(o="table"!==a||Gt.test(o)?""!==u[1]||Gt.test(o)?0:s:s.firstChild,c=o&&o.childNodes.length;c--;)st.nodeName(l=o.childNodes[c],"tbody")&&!l.childNodes.length&&o.removeChild(l);for(st.merge(h,s.childNodes),s.textContent="";s.firstChild;)s.removeChild(s.firstChild);s=d.lastChild}else h.push(t.createTextNode(o));for(s&&d.removeChild(s),st.support.appendChecked||st.grep(b(h,"input"),x),g=0;o=h[g++];)if((!r||-1===st.inArray(o,r))&&(i=st.contains(o.ownerDocument,o),s=b(d.appendChild(o),"script"),i&&m(s),n))for(c=0;o=s[c++];)tn.test(o.type||"")&&n.push(o);return s=null,d},cleanData:function(e,n){for(var r,i,o,a,s=0,u=st.expando,l=st.cache,c=st.support.deleteExpando,f=st.event.special;null!=(o=e[s]);s++)if((n||st.acceptData(o))&&(i=o[u],r=i&&l[i])){if(r.events)for(a in r.events)f[a]?st.event.remove(o,a):st.removeEvent(o,a,r.handle);l[i]&&(delete l[i],c?delete o[u]:o.removeAttribute!==t?o.removeAttribute(u):o[u]=null,K.push(i))}}});var un,ln,cn,fn=/alpha\([^)]*\)/i,pn=/opacity\s*=\s*([^)]*)/,dn=/^(top|right|bottom|left)$/,hn=/^(none|table(?!-c[ea]).+)/,gn=/^margin/,mn=RegExp("^("+ut+")(.*)$","i"),yn=RegExp("^("+ut+")(?!px)[a-z%]+$","i"),vn=RegExp("^([+-])=("+ut+")","i"),bn={BODY:"block"},xn={position:"absolute",visibility:"hidden",display:"block"},Tn={letterSpacing:0,fontWeight:400},wn=["Top","Right","Bottom","Left"],Nn=["Webkit","O","Moz","ms"];st.fn.extend({css:function(e,n){return st.access(this,function(e,n,r){var i,o,a={},s=0;if(st.isArray(n)){for(i=ln(e),o=n.length;o>s;s++)a[n[s]]=st.css(e,n[s],!1,i);return a}return r!==t?st.style(e,n,r):st.css(e,n)},e,n,arguments.length>1)},show:function(){return N(this,!0)},hide:function(){return N(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:w(this))?st(this).show():st(this).hide()})}}),st.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=un(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":st.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=st.camelCase(n),l=e.style;if(n=st.cssProps[u]||(st.cssProps[u]=T(l,u)),s=st.cssHooks[n]||st.cssHooks[u],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:l[n];if(a=typeof r,"string"===a&&(o=vn.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(st.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||st.cssNumber[u]||(r+="px"),st.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(l[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{l[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,u=st.camelCase(n);return n=st.cssProps[u]||(st.cssProps[u]=T(e.style,u)),s=st.cssHooks[n]||st.cssHooks[u],s&&"get"in s&&(o=s.get(e,!0,r)),o===t&&(o=un(e,n,i)),"normal"===o&&n in Tn&&(o=Tn[n]),r?(a=parseFloat(o),r===!0||st.isNumeric(a)?a||0:o):o},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),e.getComputedStyle?(ln=function(t){return e.getComputedStyle(t,null)},un=function(e,n,r){var i,o,a,s=r||ln(e),u=s?s.getPropertyValue(n)||s[n]:t,l=e.style;return s&&(""!==u||st.contains(e.ownerDocument,e)||(u=st.style(e,n)),yn.test(u)&&gn.test(n)&&(i=l.width,o=l.minWidth,a=l.maxWidth,l.minWidth=l.maxWidth=l.width=u,u=s.width,l.width=i,l.minWidth=o,l.maxWidth=a)),u}):V.documentElement.currentStyle&&(ln=function(e){return e.currentStyle},un=function(e,n,r){var i,o,a,s=r||ln(e),u=s?s[n]:t,l=e.style;return null==u&&l&&l[n]&&(u=l[n]),yn.test(u)&&!dn.test(n)&&(i=l.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),l.left="fontSize"===n?"1em":u,u=l.pixelLeft+"px",l.left=i,a&&(o.left=a)),""===u?"auto":u}),st.each(["height","width"],function(e,n){st.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&hn.test(st.css(e,"display"))?st.swap(e,xn,function(){return E(e,n,i)}):E(e,n,i):t},set:function(e,t,r){var i=r&&ln(e);return C(e,t,r?k(e,n,r,st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,i),i):0)}}}),st.support.opacity||(st.cssHooks.opacity={get:function(e,t){return pn.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=st.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===st.trim(o.replace(fn,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=fn.test(o)?o.replace(fn,i):o+" "+i)}}),st(function(){st.support.reliableMarginRight||(st.cssHooks.marginRight={get:function(e,n){return n?st.swap(e,{display:"inline-block"},un,[e,"marginRight"]):t}}),!st.support.pixelPosition&&st.fn.position&&st.each(["top","left"],function(e,n){st.cssHooks[n]={get:function(e,r){return r?(r=un(e,n),yn.test(r)?st(e).position()[n]+"px":r):t}}})}),st.expr&&st.expr.filters&&(st.expr.filters.hidden=function(e){return 0===e.offsetWidth&&0===e.offsetHeight||!st.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||st.css(e,"display"))},st.expr.filters.visible=function(e){return!st.expr.filters.hidden(e)}),st.each({margin:"",padding:"",border:"Width"},function(e,t){st.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+wn[r]+t]=o[r]||o[r-2]||o[0];return i}},gn.test(e)||(st.cssHooks[e+t].set=C)});var Cn=/%20/g,kn=/\[\]$/,En=/\r?\n/g,Sn=/^(?:submit|button|image|reset)$/i,An=/^(?:input|select|textarea|keygen)/i;st.fn.extend({serialize:function(){return st.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=st.prop(this,"elements");return e?st.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!st(this).is(":disabled")&&An.test(this.nodeName)&&!Sn.test(e)&&(this.checked||!Zt.test(e))}).map(function(e,t){var n=st(this).val();return null==n?null:st.isArray(n)?st.map(n,function(e){return{name:t.name,value:e.replace(En,"\r\n")}}):{name:t.name,value:n.replace(En,"\r\n")}}).get()}}),st.param=function(e,n){var r,i=[],o=function(e,t){t=st.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=st.ajaxSettings&&st.ajaxSettings.traditional),st.isArray(e)||e.jquery&&!st.isPlainObject(e))st.each(e,function(){o(this.name,this.value)});else for(r in e)j(r,e[r],n,o);return i.join("&").replace(Cn,"+")};var jn,Dn,Ln=st.now(),Hn=/\?/,Mn=/#.*$/,qn=/([?&])_=[^&]*/,_n=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Fn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,On=/^(?:GET|HEAD)$/,Bn=/^\/\//,Pn=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Rn=st.fn.load,Wn={},$n={},In="*/".concat("*");try{Dn=Y.href}catch(zn){Dn=V.createElement("a"),Dn.href="",Dn=Dn.href}jn=Pn.exec(Dn.toLowerCase())||[],st.fn.load=function(e,n,r){if("string"!=typeof e&&Rn)return Rn.apply(this,arguments);var i,o,a,s=this,u=e.indexOf(" ");return u>=0&&(i=e.slice(u,e.length),e=e.slice(0,u)),st.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(o="POST"),s.length>0&&st.ajax({url:e,type:o,dataType:"html",data:n}).done(function(e){a=arguments,s.html(i?st("").append(st.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,a||[e.responseText,t,e])}),this},st.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){st.fn[t]=function(e){return this.on(t,e)}}),st.each(["get","post"],function(e,n){st[n]=function(e,r,i,o){return st.isFunction(r)&&(o=o||i,i=r,r=t),st.ajax({url:e,type:n,dataType:o,data:r,success:i})}}),st.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Dn,type:"GET",isLocal:Fn.test(jn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":In,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":st.parseJSON,"text xml":st.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?H(H(e,st.ajaxSettings),t):H(st.ajaxSettings,e)},ajaxPrefilter:D(Wn),ajaxTransport:D($n),ajax:function(e,n){function r(e,n,r,s){var l,f,v,b,T,N=n;2!==x&&(x=2,u&&clearTimeout(u),i=t,a=s||"",w.readyState=e>0?4:0,r&&(b=M(p,w,r)),e>=200&&300>e||304===e?(p.ifModified&&(T=w.getResponseHeader("Last-Modified"),T&&(st.lastModified[o]=T),T=w.getResponseHeader("etag"),T&&(st.etag[o]=T)),304===e?(l=!0,N="notmodified"):(l=q(p,b),N=l.state,f=l.data,v=l.error,l=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),w.status=e,w.statusText=(n||N)+"",l?g.resolveWith(d,[f,N,w]):g.rejectWith(d,[w,N,v]),w.statusCode(y),y=t,c&&h.trigger(l?"ajaxSuccess":"ajaxError",[w,p,l?f:v]),m.fireWith(d,[w,N]),c&&(h.trigger("ajaxComplete",[w,p]),--st.active||st.event.trigger("ajaxStop")))}"object"==typeof e&&(n=e,e=t),n=n||{};var i,o,a,s,u,l,c,f,p=st.ajaxSetup({},n),d=p.context||p,h=p.context&&(d.nodeType||d.jquery)?st(d):st.event,g=st.Deferred(),m=st.Callbacks("once memory"),y=p.statusCode||{},v={},b={},x=0,T="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!s)for(s={};t=_n.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=b[n]=b[n]||e,v[e]=t),this},overrideMimeType:function(e){return x||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)y[t]=[y[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||T;return i&&i.abort(t),r(0,t),this}};if(g.promise(w).complete=m.add,w.success=w.done,w.error=w.fail,p.url=((e||p.url||Dn)+"").replace(Mn,"").replace(Bn,jn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=st.trim(p.dataType||"*").toLowerCase().match(lt)||[""],null==p.crossDomain&&(l=Pn.exec(p.url.toLowerCase()),p.crossDomain=!(!l||l[1]===jn[1]&&l[2]===jn[2]&&(l[3]||("http:"===l[1]?80:443))==(jn[3]||("http:"===jn[1]?80:443)))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=st.param(p.data,p.traditional)),L(Wn,p,n,w),2===x)return w;c=p.global,c&&0===st.active++&&st.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!On.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(Hn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=qn.test(o)?o.replace(qn,"$1_="+Ln++):o+(Hn.test(o)?"&":"?")+"_="+Ln++)),p.ifModified&&(st.lastModified[o]&&w.setRequestHeader("If-Modified-Since",st.lastModified[o]),st.etag[o]&&w.setRequestHeader("If-None-Match",st.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+In+"; q=0.01":""):p.accepts["*"]);for(f in p.headers)w.setRequestHeader(f,p.headers[f]);if(p.beforeSend&&(p.beforeSend.call(d,w,p)===!1||2===x))return w.abort();T="abort";for(f in{success:1,error:1,complete:1})w[f](p[f]);if(i=L($n,p,n,w)){w.readyState=1,c&&h.trigger("ajaxSend",[w,p]),p.async&&p.timeout>0&&(u=setTimeout(function(){w.abort("timeout")},p.timeout));try{x=1,i.send(v,r)}catch(N){if(!(2>x))throw N;r(-1,N)}}else r(-1,"No Transport");return w},getScript:function(e,n){return st.get(e,t,n,"script")},getJSON:function(e,t,n){return st.get(e,t,n,"json")}}),st.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return st.globalEval(e),e}}}),st.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),st.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=V.head||st("head")[0]||V.documentElement;return{send:function(t,i){n=V.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Xn=[],Un=/(=)\?(?=&|$)|\?\?/;st.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xn.pop()||st.expando+"_"+Ln++;return this[e]=!0,e}}),st.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,u=n.jsonp!==!1&&(Un.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Un.test(n.data)&&"data");return u||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=st.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,u?n[u]=n[u].replace(Un,"$1"+o):n.jsonp!==!1&&(n.url+=(Hn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||st.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Xn.push(o)),s&&st.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Vn,Yn,Jn=0,Gn=e.ActiveXObject&&function(){var e;for(e in Vn)Vn[e](t,!0)};st.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&_()||F()}:_,Yn=st.ajaxSettings.xhr(),st.support.cors=!!Yn&&"withCredentials"in Yn,Yn=st.support.ajax=!!Yn,Yn&&st.ajaxTransport(function(n){if(!n.crossDomain||st.support.cors){var r;return{send:function(i,o){var a,s,u=n.xhr();if(n.username?u.open(n.type,n.url,n.async,n.username,n.password):u.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)u[s]=n.xhrFields[s];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)u.setRequestHeader(s,i[s])}catch(l){}u.send(n.hasContent&&n.data||null),r=function(e,i){var s,l,c,f,p;try{if(r&&(i||4===u.readyState))if(r=t,a&&(u.onreadystatechange=st.noop,Gn&&delete Vn[a]),i)4!==u.readyState&&u.abort();else{f={},s=u.status,p=u.responseXML,c=u.getAllResponseHeaders(),p&&p.documentElement&&(f.xml=p),"string"==typeof u.responseText&&(f.text=u.responseText);try{l=u.statusText}catch(d){l=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=f.text?200:404}}catch(h){i||o(-1,h)}f&&o(s,l,f,c)},n.async?4===u.readyState?setTimeout(r):(a=++Jn,Gn&&(Vn||(Vn={},st(e).unload(Gn)),Vn[a]=r),u.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Qn,Kn,Zn=/^(?:toggle|show|hide)$/,er=RegExp("^(?:([+-])=|)("+ut+")([a-z%]*)$","i"),tr=/queueHooks$/,nr=[W],rr={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=er.exec(t),a=i.cur(),s=+a||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(st.cssNumber[e]?"":"px"),"px"!==r&&s){s=st.css(i.elem,e,!0)||n||1;do u=u||".5",s/=u,st.style(i.elem,e,s+r);while(u!==(u=i.cur()/a)&&1!==u&&--l)}i.unit=r,i.start=s,i.end=o[1]?s+(o[1]+1)*n:n}return i}]};st.Animation=st.extend(P,{tweener:function(e,t){st.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;i>r;r++)n=e[r],rr[n]=rr[n]||[],rr[n].unshift(t)},prefilter:function(e,t){t?nr.unshift(e):nr.push(e)}}),st.Tween=$,$.prototype={constructor:$,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(st.cssNumber[n]?"":"px")},cur:function(){var e=$.propHooks[this.prop];return e&&e.get?e.get(this):$.propHooks._default.get(this)},run:function(e){var t,n=$.propHooks[this.prop];return this.pos=t=this.options.duration?st.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):$.propHooks._default.set(this),this}},$.prototype.init.prototype=$.prototype,$.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=st.css(e.elem,e.prop,"auto"),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){st.fx.step[e.prop]?st.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[st.cssProps[e.prop]]||st.cssHooks[e.prop])?st.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},$.propHooks.scrollTop=$.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},st.each(["toggle","show","hide"],function(e,t){var n=st.fn[t];st.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(I(t,!0),e,r,i)}}),st.fn.extend({fadeTo:function(e,t,n,r){return this.filter(w).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=st.isEmptyObject(e),o=st.speed(t,n,r),a=function(){var t=P(this,st.extend({},e),o);a.finish=function(){t.stop(!0)},(i||st._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=st.timers,a=st._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&tr.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&st.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=st._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=st.timers,a=r?r.length:0;for(n.finish=!0,st.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),st.each({slideDown:I("show"),slideUp:I("hide"),slideToggle:I("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){st.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),st.speed=function(e,t,n){var r=e&&"object"==typeof e?st.extend({},e):{complete:n||!n&&t||st.isFunction(e)&&e,duration:e,easing:n&&t||t&&!st.isFunction(t)&&t};return r.duration=st.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in st.fx.speeds?st.fx.speeds[r.duration]:st.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){st.isFunction(r.old)&&r.old.call(this),r.queue&&st.dequeue(this,r.queue)},r},st.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},st.timers=[],st.fx=$.prototype.init,st.fx.tick=function(){var e,n=st.timers,r=0;for(Qn=st.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||st.fx.stop(),Qn=t},st.fx.timer=function(e){e()&&st.timers.push(e)&&st.fx.start()},st.fx.interval=13,st.fx.start=function(){Kn||(Kn=setInterval(st.fx.tick,st.fx.interval))},st.fx.stop=function(){clearInterval(Kn),Kn=null},st.fx.speeds={slow:600,fast:200,_default:400},st.fx.step={},st.expr&&st.expr.filters&&(st.expr.filters.animated=function(e){return st.grep(st.timers,function(t){return e===t.elem}).length}),st.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){st.offset.setOffset(this,e,t)});var n,r,i={top:0,left:0},o=this[0],a=o&&o.ownerDocument;if(a)return n=a.documentElement,st.contains(n,o)?(o.getBoundingClientRect!==t&&(i=o.getBoundingClientRect()),r=z(a),{top:i.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:i.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):i},st.offset={setOffset:function(e,t,n){var r=st.css(e,"position");"static"===r&&(e.style.position="relative");var i,o,a=st(e),s=a.offset(),u=st.css(e,"top"),l=st.css(e,"left"),c=("absolute"===r||"fixed"===r)&&st.inArray("auto",[u,l])>-1,f={},p={};c?(p=a.position(),i=p.top,o=p.left):(i=parseFloat(u)||0,o=parseFloat(l)||0),st.isFunction(t)&&(t=t.call(e,n,s)),null!=t.top&&(f.top=t.top-s.top+i),null!=t.left&&(f.left=t.left-s.left+o),"using"in t?t.using.call(e,f):a.css(f)}},st.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===st.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),st.nodeName(e[0],"html")||(n=e.offset()),n.top+=st.css(e[0],"borderTopWidth",!0),n.left+=st.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-st.css(r,"marginTop",!0),left:t.left-n.left-st.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||V.documentElement;e&&!st.nodeName(e,"html")&&"static"===st.css(e,"position");)e=e.offsetParent;return e||V.documentElement})}}),st.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);st.fn[e]=function(i){return st.access(this,function(e,i,o){var a=z(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?st(a).scrollLeft():o,r?o:st(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}}),st.each({Height:"height",Width:"width"},function(e,n){st.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){st.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return st.access(this,function(n,r,i){var o;return st.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?st.css(n,r,s):st.style(n,r,i,s)},n,a?i:t,a,null)}})}),e.jQuery=e.$=st,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return st})})(window);
+//@ sourceMappingURL=jquery.min.map
\ No newline at end of file
diff --git a/test/express4/public/javascripts/test_cases.js b/test/express4/public/javascripts/test_cases.js
new file mode 100644
index 0000000..6abc176
--- /dev/null
+++ b/test/express4/public/javascripts/test_cases.js
@@ -0,0 +1,4404 @@
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/bad_unicode/input.toffee"] = {
+ bundlePath: "/bad_unicode/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var u2028, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/bad_unicode/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\\u2028:
\n");
+ _ln(2);
+ _to(" \n");
+ _ln(3);
+ _to("\\u2029:
\n");
+ _ln(4);
+ _to(" \n");
+ _ln(5);
+ _ln(3);
+ _ts(2);
+ _ts(2);
+ u2028 = "u2029 = ";
+ _ts(1);
+ _ln(6);
+ _to("\n");
+ _ln(7);
+ _to("
HI 2028: ");
+ _to("" + (escape("")));
+ _to("
\n");
+ _ln(8);
+ _to("
HI 2028: ");
+ _to("" + (escape("")));
+ _to("
\n");
+ _ln(9);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/bad_unicode/output.toffee"] = {
+ bundlePath: "/bad_unicode/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/bad_unicode/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\\u2028:
\n");
+ _ln(2);
+ _to(" \n");
+ _ln(3);
+ _to("\\u2029:
\n");
+ _ln(4);
+ _to(" \n");
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _to("
HI 2028:
\n");
+ _ln(7);
+ _to("
HI 2028:
\n");
+ _ln(8);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/big_file/input.toffee"] = {
+ bundlePath: "/big_file/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var count, i, __repress, _i, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/big_file/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ count = 0;
+ for (i = _i = 0; _i < 2; i = ++_i) {
+ _ts(1);
+ _ts(1);
+ _ln(3);
+ _to("" + (escape(count++)));
+ _ln(4);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(5);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(6);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(7);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(8);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(9);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(10);
+ _to("...");
+ _ts(2);
+ _ts(2);
+ count += 1;
+ print(" " + count + "...");
+ _ts(1);
+ _ln(13);
+ _to(" ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(14);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(15);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(16);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(17);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(18);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(19);
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _to("... ");
+ _to("" + (escape(count++)));
+ _ln(20);
+ _to("...");
+ _ts(2);
+ _ts(2);
+ count += 1;
+ print(" " + count + "...");
+ }
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/big_file/output.toffee"] = {
+ bundlePath: "/big_file/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/big_file/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11... 12... 13... 14... 15... 16... 17... 18... 19... 20... 21... 22... 23... 24... 25... 26... 27... 28... 29... 30... 31... 32... 33... 34... 35... 36... 37... 38... 39... 40... 41... 42... 43... 44... 45... 46... 47... 48... 49... 50... 51... 52... 53... 54... 55... 56... 57... 58... 59... 60... 61... 62... 63... 64... 65... 66... 67... 68... 70... 70... 71... 72... 73... 74... 75... 76... 77... 78... 79... 80... 81... 82... 83... 84... 85... 86... 87... 88... 89... 90... 91... 92... 93... 94... 95... 96... 97... 98... 99... 100... 101... 102... 103... 104... 105... 106... 107... 108... 109... 110... 111... 112... 113... 114... 115... 116... 117... 118... 119... 120... 121... 122... 123... 124... 125... 126... 127... 128... 129... 130... 131... 132... 133... 134... 135... 136... 137... 138... 139... 140... 141... 142... 143... 144... 145... 146... 147... 148... 149... 150... 151... 152... 153... 154... 155... 156... 157... 158... 159... 160... 162...162... 163... 164... 165... 166... 167... 168... 169... 170... 171... 172... 173... 174... 175... 176... 177... 178... 179... 180... 181... 182... 183... 184... 185... 186... 187... 188... 189... 190... 191... 192... 193... 194... 195... 196... 197... 198... 199... 200... 201... 202... 203... 204... 205... 206... 207... 208... 209... 210... 211... 212... 213... 214... 215... 216... 217... 218... 219... 220... 221... 222... 223... 224... 225... 226... 227... 228... 229... 230... 232... 232... 233... 234... 235... 236... 237... 238... 239... 240... 241... 242... 243... 244... 245... 246... 247... 248... 249... 250... 251... 252... 253... 254... 255... 256... 257... 258... 259... 260... 261... 262... 263... 264... 265... 266... 267... 268... 269... 270... 271... 272... 273... 274... 275... 276... 277... 278... 279... 280... 281... 282... 283... 284... 285... 286... 287... 288... 289... 290... 291... 292... 293... 294... 295... 296... 297... 298... 299... 300... 301... 302... 303... 304... 305... 306... 307... 308... 309... 310... 311... 312... 313... 314... 315... 316... 317... 318... 319... 320... 321... 322... 324...");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/comments/input.toffee"] = {
+ bundlePath: "/comments/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/comments/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to("Pass 1\n");
+ _ln(3);
+ _ts(2);
+ _ts(1);
+ _ln(8);
+ _to("\n");
+ _ln(9);
+ _to("Pass 2\n");
+ _ln(10);
+ _ts(2);
+ _ts(2);
+
+ /*
+ print "FAIL FAIL FAIL"
+ #{ foo }
+ */
+ _ts(1);
+ _ln(19);
+ _to("\n");
+ _ln(20);
+ _to("Pass 3");
+ _ts(2);
+ _ts(1);
+ _to("\n");
+ _ln(21);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/comments/output.toffee"] = {
+ bundlePath: "/comments/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/comments/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to("Pass 1\n");
+ _ln(3);
+ _to("\n");
+ _ln(4);
+ _to("Pass 2\n");
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _to("Pass 3\n");
+ _ln(7);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/custom_escape/input.toffee"] = {
+ bundlePath: "/custom_escape/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var w, x, y, z, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/custom_escape/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ x = '"Hello world"';
+ y = '
';
+ z = 'click&clack';
+ w = [
+ 1, 2, {
+ "place": "The Dreadfort"
+ }
+ ];
+ _ts(1);
+ _ln(6);
+ _to("\n");
+ _ln(7);
+ _to(" custom x = ");
+ _to("" + (x != null ? escape(x) : ''));
+ _to("\n");
+ _ln(8);
+ _to(" custom y = ");
+ _to("" + (y != null ? escape(y) : ''));
+ _to("\n");
+ _ln(9);
+ _to(" custom z = ");
+ _to("" + (z != null ? escape(z) : ''));
+ _to("\n");
+ _ln(10);
+ _to(" custom w = ");
+ _to("" + (w != null ? escape(w) : ''));
+ _to("\n");
+ _ln(11);
+ _to("
");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/custom_escape/output.toffee"] = {
+ bundlePath: "/custom_escape/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/custom_escape/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to(" custom x = Helloworldscriptvarx100script\n");
+ _ln(3);
+ _to(" custom y = td\n");
+ _ln(4);
+ _to(" custom z = clickclack\n");
+ _ln(5);
+ _to(" custom w = 12objectObject\n");
+ _ln(6);
+ _to("
");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/eco_compare/input.toffee"] = {
+ bundlePath: "/eco_compare/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var f, friends, project, __repress, _i, _len, _ln, _ref, _ref1, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/eco_compare/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ this.projects = [
+ {
+ url: "http://localhost:3000",
+ name: "okcupid",
+ description: "A site for singles"
+ }, {
+ url: "http://localhost:3001",
+ name: "tallygram",
+ description: "A site for anyone"
+ }
+ ];
+ if (this.projects.length) {
+ _ref1 = this.projects;
+ for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
+ project = _ref1[_i];
+ _ts(1);
+ _ts(1);
+ _ln(8);
+ _to("\n");
+ _ln(9);
+ _to(" ");
+ _to("" + (escape(project.name)));
+ _to(" \n");
+ _ln(10);
+ _to(" ");
+ _to("" + (escape(project.description)));
+ _to("
\n");
+ _ln(11);
+ _to(" ");
+ _ts(2);
+ }
+ } else {
+ _ts(1);
+ _ts(1);
+ _ln(12);
+ _to(" No projects ");
+ _ts(2);
+ }
+ friends = [
+ {
+ gender: "f",
+ name: "Jennie"
+ }, {
+ gender: "f",
+ name: "Rachel"
+ }, {
+ gender: "m",
+ name: "Petar"
+ }, {
+ gender: "f",
+ name: "Marissa"
+ }
+ ];
+ _ts(1);
+ _ln(20);
+ _to("\n");
+ _ln(21);
+ _to("\n");
+ _ln(22);
+ _to("You have ");
+ _to("" + (escape(((function() {
+ var _j, _len1, _results;
+ _results = [];
+ for (_j = 0, _len1 = friends.length; _j < _len1; _j++) {
+ f = friends[_j];
+ if (f.gender === "f") {
+ _results.push(f);
+ }
+ }
+ return _results;
+ })()).length)));
+ _to(" female friends.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/eco_compare/output.toffee"] = {
+ bundlePath: "/eco_compare/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/eco_compare/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to(" okcupid \n");
+ _ln(3);
+ _to(" A site for singles
\n");
+ _ln(4);
+ _to(" \n");
+ _ln(5);
+ _to(" tallygram \n");
+ _ln(6);
+ _to(" A site for anyone
\n");
+ _ln(7);
+ _to(" \n");
+ _ln(8);
+ _to("\n");
+ _ln(9);
+ _to("You have 3 female friends.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/escape/input.toffee"] = {
+ bundlePath: "/escape/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var dir, v, w, x, y, z, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/escape/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ x = '"Hello world"';
+ y = ' ';
+ z = 'click&clack';
+ w = [
+ 1, 2, {
+ "place": "The Dreadfort",
+ "evil \"code\" ": "italic "
+ }
+ ];
+ v = ["\u2028", "\u2029"];
+ dir = ["hi\u{202e}there"];
+ _ts(1);
+ _ln(8);
+ _to("\n");
+ _ln(9);
+ _to(" default x = ");
+ _to("" + (x != null ? escape(x) : ''));
+ _to("\n");
+ _ln(10);
+ _to(" default y = ");
+ _to("" + (y != null ? escape(y) : ''));
+ _to("\n");
+ _ln(11);
+ _to(" default z = ");
+ _to("" + (z != null ? escape(z) : ''));
+ _to("\n");
+ _ln(12);
+ _to(" default w = ");
+ _to("" + (w != null ? escape(w) : ''));
+ _to("\n");
+ _ln(13);
+ _to(" default r = ");
+ _to("" + (typeof r !== "undefined" && r !== null ? escape(r) : ''));
+ _to("eol\n");
+ _ln(14);
+ _to(" default w.foo = ");
+ _to("" + (escape(w.foo)));
+ _to("eol\n");
+ _ln(15);
+ _to(" default v = ");
+ _to("" + (v != null ? escape(v) : ''));
+ _to("\n");
+ _ln(16);
+ _to(" default dir = ");
+ _to("" + (dir != null ? escape(dir) : ''));
+ _to("\n");
+ _ln(17);
+ _to(" default dir0 = ");
+ _to("" + (escape(dir[0])));
+ _to("\n");
+ _ln(18);
+ _to("
\n");
+ _ln(19);
+ _to("\n");
+ _ln(20);
+ _to(" raw x = ");
+ _to("" + (raw(x)));
+ _to("\n");
+ _ln(21);
+ _to(" raw y = ");
+ _to("" + (raw(y)));
+ _to("\n");
+ _ln(22);
+ _to(" raw z = ");
+ _to("" + (raw(z)));
+ _to("\n");
+ _ln(23);
+ _to(" raw w = ");
+ _to("" + (raw(w)));
+ _to("\n");
+ _ln(24);
+ _to("
\n");
+ _ln(25);
+ _to("\n");
+ _ln(26);
+ _to(" w_as_json_stringify=");
+ _to("" + (escape(JSON.stringify(w))));
+ _to("\n");
+ _ln(27);
+ _to(" w_as_json_stringify_raw=");
+ _to("" + (raw(JSON.stringify(w))));
+ _to("\n");
+ _ln(28);
+ _to(" \n");
+ _ln(29);
+ _to("\n");
+ _ln(36);
+ _to("\n");
+ _ln(37);
+ _ts(2);
+ _ts(2);
+ print(" raw printed x = " + x + "\n");
+ print(" raw printed y = " + y + "\n");
+ print(" raw printed z = " + z + "\n");
+ print(" raw printed w = " + w);
+ _ts(1);
+ _ln(42);
+ _to("\n");
+ _ln(43);
+ _to("
\n");
+ _ln(44);
+ _to("\n");
+ _ln(45);
+ _ts(2);
+ _ts(2);
+ print(" json printed x = " + (raw(raw(raw(raw(json(x)))))) + "\n");
+ print(" json printed y = " + (raw(raw(raw(raw(json(y)))))) + "\n");
+ print(" json printed z = " + (raw(raw(raw(raw(json(z)))))) + "\n");
+ print(" json printed w = " + (raw(raw(raw(raw(json(w)))))) + "\n");
+ print(" json printed v = " + (raw(raw(raw(raw(json(v)))))));
+ _ts(1);
+ _ln(51);
+ _to("\n");
+ _ln(52);
+ _to("
\n");
+ _ln(53);
+ _to("\n");
+ _ln(54);
+ _ts(2);
+ _ts(2);
+ print(" html printed longhand x = " + (__toffee.html(x)) + "\n");
+ print(" html printed longhand y = " + (__toffee.html(y)) + "\n");
+ print(" html printed longhand z = " + (__toffee.html(z)) + "\n");
+ print(" html printed longhand w = " + (__toffee.html(w)));
+ _ts(1);
+ _ln(59);
+ _to("\n");
+ _ln(60);
+ _to("
\n");
+ _ln(61);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/escape/output.toffee"] = {
+ bundlePath: "/escape/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/escape/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to(" default x = "Hello world"\n");
+ _ln(3);
+ _to(" default y = <hr />\n");
+ _ln(4);
+ _to(" default z = click&clack\n");
+ _ln(5);
+ _to(" default w = [1,2,{\"place\":\"The Dreadfort\",\"evil \\u003Cb\\u003E\\\"code\\\"\\u003C/b\\u003E\":\"\\u003Ci\\u003Eitalic\\u003C/i\\u003E\"}]\n");
+ _ln(6);
+ _to(" default r = eol\n");
+ _ln(7);
+ _to(" default w.foo = eol\n");
+ _ln(8);
+ _to(" default v = [\"\\u2028\",\"\\u2029\"]\n");
+ _ln(9);
+ _to(" default dir = [\"hi\\u202ethere\"]\n");
+ _ln(10);
+ _to(" default dir0 = hithere\n");
+ _ln(11);
+ _to("
\n");
+ _ln(12);
+ _to("\n");
+ _ln(13);
+ _to(" raw x = \"Hello world\"\n");
+ _ln(14);
+ _to(" raw y =
\n");
+ _ln(15);
+ _to(" raw z = click&clack\n");
+ _ln(16);
+ _to(" raw w = 1,2,[object Object]\n");
+ _ln(17);
+ _to("\n");
+ _ln(18);
+ _to("\n");
+ _ln(19);
+ _to(" w_as_json_stringify=[1,2,{"place":"The Dreadfort","evil <b>\\"code\\"</b>":"<i>italic</i>"}]\n");
+ _ln(20);
+ _to(" w_as_json_stringify_raw=[1,2,{\"place\":\"The Dreadfort\",\"evil \\\"code\\\" \":\"italic \"}]\n");
+ _ln(21);
+ _to(" \n");
+ _ln(22);
+ _to("\n");
+ _ln(29);
+ _to("\n");
+ _ln(30);
+ _to(" raw printed x = \"Hello world\"\n");
+ _ln(31);
+ _to(" raw printed y =
\n");
+ _ln(32);
+ _to(" raw printed z = click&clack\n");
+ _ln(33);
+ _to(" raw printed w = 1,2,[object Object]\n");
+ _ln(34);
+ _to("\n");
+ _ln(35);
+ _to("\n");
+ _ln(36);
+ _to(" json printed x = \"\\\"Hello world\\\"\"\n");
+ _ln(37);
+ _to(" json printed y = \"\\u003Chr /\\u003E\"\n");
+ _ln(38);
+ _to(" json printed z = \"click\\u0026clack\"\n");
+ _ln(39);
+ _to(" json printed w = [1,2,{\"place\":\"The Dreadfort\",\"evil \\u003Cb\\u003E\\\"code\\\"\\u003C/b\\u003E\":\"\\u003Ci\\u003Eitalic\\u003C/i\\u003E\"}]\n");
+ _ln(40);
+ _to(" json printed v = [\"\\u2028\",\"\\u2029\"]\n");
+ _ln(41);
+ _to("
\n");
+ _ln(42);
+ _to("\n");
+ _ln(43);
+ _to(" html printed longhand x = "Hello world"\n");
+ _ln(44);
+ _to(" html printed longhand y = <hr />\n");
+ _ln(45);
+ _to(" html printed longhand z = click&clack\n");
+ _ln(46);
+ _to(" html printed longhand w = 1,2,[object Object]\n");
+ _ln(47);
+ _to("
\n");
+ _ln(48);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/hello_world/input.toffee"] = {
+ bundlePath: "/hello_world/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/hello_world/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (typeof greeting !== "undefined" && greeting !== null ? escape(greeting) : ''));
+ _to(", world.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/hello_world/output.toffee"] = {
+ bundlePath: "/hello_world/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/hello_world/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("Hello, world.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/hello_world/temp.toffee"] = {
+ bundlePath: "/hello_world/temp.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/hello_world/temp.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("a\n");
+ _ln(2);
+ _to("b\n");
+ _ln(3);
+ _to("c\n");
+ _ln(4);
+ _to("" + (escape(passed_fn(100))));
+ _to("\n");
+ _ln(5);
+ _to("d\n");
+ _ln(6);
+ _to("e\n");
+ _ln(7);
+ _to("f");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_order/child.toffee"] = {
+ bundlePath: "/include_order/child.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_order/child.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("a\n");
+ _ln(2);
+ _ts(2);
+ _ts(2);
+ say_hi();
+ _ts(1);
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("b");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_order/input.toffee"] = {
+ bundlePath: "/include_order/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var say_hi, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_order/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ say_hi = function() {
+ _ts(1);
+ _ts(1);
+ _ln(3);
+ _to("hi");
+ return _ts(2);
+ };
+ _ts(1);
+ _ln(4);
+ _to("1\n");
+ _ln(5);
+ _to("2\n");
+ _ln(6);
+ _to("" + (partial("child.toffee", {
+ say_hi: say_hi
+ })));
+ _to("\n");
+ _ln(7);
+ _to("3\n");
+ _ln(8);
+ _to("4");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_order/output.toffee"] = {
+ bundlePath: "/include_order/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_order/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("1\n");
+ _ln(2);
+ _to("2\n");
+ _ln(3);
+ _to("hia\n");
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("b\n");
+ _ln(6);
+ _to("3\n");
+ _ln(7);
+ _to("4");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_recursion/input.toffee"] = {
+ bundlePath: "/include_recursion/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_recursion/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ if (countdown === 0) {
+ _ts(1);
+ _ts(1);
+ _ln(2);
+ _to("blastoff!");
+ _ts(2);
+ } else {
+ print("" + countdown + "..." + (partial('input.toffee', {
+ countdown: countdown - 1
+ })));
+ }
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_recursion/output.toffee"] = {
+ bundlePath: "/include_recursion/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_recursion/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("10...9...8...7...6...5...4...3...2...1...blastoff!");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_techniques/input.toffee"] = {
+ bundlePath: "/include_techniques/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_techniques/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (partial("message.toffee", {
+ from: "Chris "
+ })));
+ _to("\n");
+ _ln(2);
+ _to("" + (partial("message.toffee", {
+ from: "Max & Sam"
+ })));
+ _to("\n");
+ _ln(3);
+ _ts(2);
+ _ts(2);
+ print(partial("message.toffee", {
+ from: "Christian"
+ }));
+ _ts(1);
+ _ts(1);
+ _ln(5);
+ _to("" + (partial("message.toffee", {
+ from: "Jennie"
+ })));
+ _ts(2);
+ print(partial("message.toffee", {
+ sender: "The enemy"
+ }));
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_techniques/message.toffee"] = {
+ bundlePath: "/include_techniques/message.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var from, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_techniques/message.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ from = from || "Unknown";
+ _ts(1);
+ _ln(3);
+ _to("From: ");
+ _to("" + (from != null ? escape(from) : ''));
+ _to(" \n");
+ _ln(4);
+ _to("Msg: Hello, world\n");
+ _ln(5);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/include_techniques/output.toffee"] = {
+ bundlePath: "/include_techniques/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/include_techniques/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("From: Chris <ccoyne77@gmail> \n");
+ _ln(2);
+ _to("Msg: Hello, world\n");
+ _ln(3);
+ _to("\n");
+ _ln(4);
+ _to("From: Max & Sam \n");
+ _ln(5);
+ _to("Msg: Hello, world\n");
+ _ln(6);
+ _to("\n");
+ _ln(7);
+ _to("From: Christian \n");
+ _ln(8);
+ _to("Msg: Hello, world\n");
+ _ln(9);
+ _to("From: Jennie \n");
+ _ln(10);
+ _to("Msg: Hello, world\n");
+ _ln(11);
+ _to("From: Unknown \n");
+ _ln(12);
+ _to("Msg: Hello, world\n");
+ _ln(13);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/indent_attack/input.toffee"] = {
+ bundlePath: "/indent_attack/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var i, square, x, __repress, _i, _j, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/indent_attack/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to(" \n");
+ _ln(2);
+ _to(" ");
+ _ts(2);
+ _ts(2);
+ if (1 === 1) {
+ if (2 === 2) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(5);
+ _to("Pass1");
+ _ts(2);
+ }
+ }
+ }
+ if (1 === 1) {
+ if (2 === 3) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(9);
+ _to("Fail");
+ _ts(2);
+ } else {
+ _ts(1);
+ _ts(1);
+ _ln(11);
+ _to("Fail");
+ _ts(2);
+ }
+ } else {
+ if (2 === 2) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(14);
+ _to("Pass2");
+ _ts(2);
+ }
+ }
+ }
+ }
+ _ts(1);
+ _ln(15);
+ _to("\n");
+ _ln(16);
+ _to(" \n");
+ _ln(17);
+ _to("\n");
+ _ln(18);
+ _ts(2);
+ _ts(2);
+ if (1 === 1) {
+ if (2 === 2) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(21);
+ _to("Pass3");
+ _ts(2);
+ }
+ }
+ }
+ if (1 === 1) {
+ if (2 === 3) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(25);
+ _to("Fail");
+ _ts(2);
+ } else {
+ _ts(1);
+ _ts(1);
+ _ln(27);
+ _to("Fail");
+ _ts(2);
+ }
+ } else {
+ if (2 === 2) {
+ if (3 === 3) {
+ _ts(1);
+ _ts(1);
+ _ln(30);
+ _to("Pass4");
+ _ts(2);
+ }
+ }
+ }
+ }
+ _ts(1);
+ _ln(31);
+ _to("\n");
+ _ln(32);
+ _to(" \n");
+ _ln(33);
+ _to("\n");
+ _ln(34);
+ _ts(2);
+ _ts(2);
+ if (10 === 10) {
+ if (20 === 20) {
+ if (30 === 30) {
+ _ts(1);
+ _ts(1);
+ _ln(37);
+ _to("Pass5");
+ _ts(2);
+ }
+ }
+ }
+ if (10 === 10) {
+ if (20 === 30) {
+ if (30 === 30) {
+ _ts(1);
+ _ts(1);
+ _ln(41);
+ _to("Fail");
+ _ts(2);
+ } else {
+ _ts(1);
+ _ts(1);
+ _ln(43);
+ _to("Fail");
+ _ts(2);
+ }
+ } else {
+ if (20 === 20) {
+ if (30 === 30) {
+ _ts(1);
+ _ts(1);
+ _ln(46);
+ _to("Pass6");
+ _ts(2);
+ }
+ }
+ }
+ }
+ _ts(1);
+ _ln(47);
+ _to("\n");
+ _ln(48);
+ _to("\n");
+ _ln(49);
+ _ts(2);
+ _ts(2);
+ if (99 === 99) {
+ print('Pass7');
+ } else {
+ print('Fail');
+ _ts(1);
+ _ts(1);
+ _ln(54);
+ _to("Fail8");
+ _ts(2);
+ }
+ _ts(1);
+ _ts(1);
+ _ln(55);
+ _to("Pass8");
+ _ts(2);
+ _ts(1);
+ _ln(56);
+ _to("\n");
+ _ln(57);
+ _to("\n");
+ _ln(58);
+ _ts(2);
+ _ts(2);
+ _ts(1);
+ _ts(1);
+ _ln(60);
+ _to("...passed with flying colors.");
+ _ts(2);
+ _ts(1);
+ _ln(82);
+ _to("\n");
+ _ln(83);
+ _to("\n");
+ _ln(84);
+ _to(" ");
+ _ts(2);
+ _ts(2);
+ x = 20;
+ if (x > 1) {
+ for (i = _i = 12; 12 <= x ? _i < x : _i > x; i = 12 <= x ? ++_i : --_i) {
+ square = 16;
+ _ts(1);
+ _ts(1);
+ _ln(89);
+ _to("Pass");
+ _to("" + (i != null ? escape(i) : ''));
+ _ts(2);
+ _ts(2);
+ if (i === square) {
+ _ts(1);
+ _ts(1);
+ _ln(90);
+ _to("(a perfect square)");
+ _ts(2);
+ }
+ }
+ }
+ _ts(1);
+ _ln(92);
+ _to("\n");
+ _ln(93);
+ _to(" ");
+ _ts(2);
+ _ts(2);
+ x = 20;
+ if (x > 1) {
+ for (i = _j = 12; 12 <= x ? _j < x : _j > x; i = 12 <= x ? ++_j : --_j) {
+ square = 16;
+ }
+ _ts(1);
+ _ts(1);
+ _ln(98);
+ _to("Pass");
+ _to("" + (i != null ? escape(i) : ''));
+ _ts(2);
+ _ts(2);
+ if (i === square) {
+ _ts(1);
+ _ts(1);
+ _ln(99);
+ _to("(a perfect square)");
+ _ts(2);
+ }
+ }
+ _ts(1);
+ _ln(101);
+ _to("\n");
+ _ln(102);
+ _to("
");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/indent_attack/output.toffee"] = {
+ bundlePath: "/indent_attack/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/indent_attack/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to(" \n");
+ _ln(2);
+ _to(" Pass1Pass2\n");
+ _ln(3);
+ _to(" \n");
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("Pass3Pass4\n");
+ _ln(6);
+ _to(" \n");
+ _ln(7);
+ _to("\n");
+ _ln(8);
+ _to("Pass5Pass6\n");
+ _ln(9);
+ _to("\n");
+ _ln(10);
+ _to("Pass7Pass8\n");
+ _ln(11);
+ _to("\n");
+ _ln(12);
+ _to("...passed with flying colors.\n");
+ _ln(13);
+ _to("\n");
+ _ln(14);
+ _to(" Pass12Pass13Pass14Pass15Pass16(a perfect square)Pass17Pass18Pass19\n");
+ _ln(15);
+ _to(" Pass20\n");
+ _ln(16);
+ _to("
");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/json_formatting/input.toffee"] = {
+ bundlePath: "/json_formatting/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var x, y, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/json_formatting/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ x = {
+ foo: [1, 2, 3],
+ bar: {
+ car: [
+ 4, 5, "<\/html", {
+ zar: [6, 7, null]
+ }
+ ]
+ }
+ };
+ y = [1, 2, "<\/script>\""];
+ _ts(1);
+ _ln(7);
+ _to("\n");
+ _ln(8);
+ _to("" + (x != null ? escape(x) : ''));
+ _to("\n");
+ _ln(9);
+ _to("" + (json(x, {
+ indent: ' '
+ })));
+ _to("\n");
+ _ln(10);
+ _to("" + (json(x, {
+ indent: 2
+ })));
+ _to("\n");
+ _ln(11);
+ _to("" + (json(x, {
+ indent: '\t'
+ })));
+ _to("\n");
+ _ln(12);
+ _to("" + (__toffee.json(y, {
+ indent: 3
+ })));
+ _to("\n");
+ _ln(13);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/json_formatting/output.toffee"] = {
+ bundlePath: "/json_formatting/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/json_formatting/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to("{\"foo\":[1,2,3],\"bar\":{\"car\":[4,5,\"\\u003C/html\",{\"zar\":[6,7,null]}]}}\n");
+ _ln(3);
+ _to("{\n");
+ _ln(4);
+ _to(" \"foo\": [\n");
+ _ln(5);
+ _to(" 1,\n");
+ _ln(6);
+ _to(" 2,\n");
+ _ln(7);
+ _to(" 3\n");
+ _ln(8);
+ _to(" ],\n");
+ _ln(9);
+ _to(" \"bar\": {\n");
+ _ln(10);
+ _to(" \"car\": [\n");
+ _ln(11);
+ _to(" 4,\n");
+ _ln(12);
+ _to(" 5,\n");
+ _ln(13);
+ _to(" \"\\u003C/html\",\n");
+ _ln(14);
+ _to(" {\n");
+ _ln(15);
+ _to(" \"zar\": [\n");
+ _ln(16);
+ _to(" 6,\n");
+ _ln(17);
+ _to(" 7,\n");
+ _ln(18);
+ _to(" null\n");
+ _ln(19);
+ _to(" ]\n");
+ _ln(20);
+ _to(" }\n");
+ _ln(21);
+ _to(" ]\n");
+ _ln(22);
+ _to(" }\n");
+ _ln(23);
+ _to("}\n");
+ _ln(24);
+ _to("{\n");
+ _ln(25);
+ _to(" \"foo\": [\n");
+ _ln(26);
+ _to(" 1,\n");
+ _ln(27);
+ _to(" 2,\n");
+ _ln(28);
+ _to(" 3\n");
+ _ln(29);
+ _to(" ],\n");
+ _ln(30);
+ _to(" \"bar\": {\n");
+ _ln(31);
+ _to(" \"car\": [\n");
+ _ln(32);
+ _to(" 4,\n");
+ _ln(33);
+ _to(" 5,\n");
+ _ln(34);
+ _to(" \"\\u003C/html\",\n");
+ _ln(35);
+ _to(" {\n");
+ _ln(36);
+ _to(" \"zar\": [\n");
+ _ln(37);
+ _to(" 6,\n");
+ _ln(38);
+ _to(" 7,\n");
+ _ln(39);
+ _to(" null\n");
+ _ln(40);
+ _to(" ]\n");
+ _ln(41);
+ _to(" }\n");
+ _ln(42);
+ _to(" ]\n");
+ _ln(43);
+ _to(" }\n");
+ _ln(44);
+ _to("}\n");
+ _ln(45);
+ _to("{\n");
+ _ln(46);
+ _to("\t\"foo\": [\n");
+ _ln(47);
+ _to("\t\t1,\n");
+ _ln(48);
+ _to("\t\t2,\n");
+ _ln(49);
+ _to("\t\t3\n");
+ _ln(50);
+ _to("\t],\n");
+ _ln(51);
+ _to("\t\"bar\": {\n");
+ _ln(52);
+ _to("\t\t\"car\": [\n");
+ _ln(53);
+ _to("\t\t\t4,\n");
+ _ln(54);
+ _to("\t\t\t5,\n");
+ _ln(55);
+ _to("\t\t\t\"\\u003C/html\",\n");
+ _ln(56);
+ _to("\t\t\t{\n");
+ _ln(57);
+ _to("\t\t\t\t\"zar\": [\n");
+ _ln(58);
+ _to("\t\t\t\t\t6,\n");
+ _ln(59);
+ _to("\t\t\t\t\t7,\n");
+ _ln(60);
+ _to("\t\t\t\t\tnull\n");
+ _ln(61);
+ _to("\t\t\t\t]\n");
+ _ln(62);
+ _to("\t\t\t}\n");
+ _ln(63);
+ _to("\t\t]\n");
+ _ln(64);
+ _to("\t}\n");
+ _ln(65);
+ _to("}\n");
+ _ln(66);
+ _to("[\n");
+ _ln(67);
+ _to(" 1,\n");
+ _ln(68);
+ _to(" 2,\n");
+ _ln(69);
+ _to(" \"\\u003C/script\\u003E\\\"\"\n");
+ _ln(70);
+ _to("]\n");
+ _ln(71);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/junk/input.toffee"] = {
+ bundlePath: "/junk/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var supplies, supply, __repress, _i, _len, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/junk/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ supplies = ["broom", "mop", "vacuum"];
+ _ts(1);
+ _ln(3);
+ _to("\n");
+ _ln(4);
+ _to(" ");
+ _ts(2);
+ _ts(2);
+ for (_i = 0, _len = supplies.length; _i < _len; _i++) {
+ supply = supplies[_i];
+ _ts(1);
+ _ts(1);
+ _to("");
+ _to("" + (supply != null ? escape(supply) : ''));
+ _to(" ");
+ _ts(2);
+ }
+ _ts(1);
+ _to("\n");
+ _ln(5);
+ _to(" \n");
+ _ln(6);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/junk/output.toffee"] = {
+ bundlePath: "/junk/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/junk/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to(" broom mop vacuum \n");
+ _ln(3);
+ _to(" \n");
+ _ln(4);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/lambda_fns/input.toffee"] = {
+ bundlePath: "/lambda_fns/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var echo_it, print_it, print_it_twice, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/lambda_fns/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ print_it = function(msg) {
+ _ts(1);
+ _ts(1);
+ _ln(2);
+ _to("" + (msg != null ? escape(msg) : ''));
+ return _ts(2);
+ };
+ print_it_twice = function(msg) {
+ var m;
+ _ts(1);
+ _ts(1);
+ _ln(5);
+ _to("" + (msg != null ? escape(msg) : ''));
+ _ts(2);
+ m = msg;
+ _ts(1);
+ _ts(1);
+ _ln(7);
+ _to("" + (m != null ? escape(m) : ''));
+ return _ts(2);
+ };
+ echo_it = function(msg) {
+ var v;
+ v = msg;
+ return v;
+ };
+ print_it("Pass");
+ print_it_twice("Pass");
+ print(echo_it("Pass"));
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/lambda_fns/output.toffee"] = {
+ bundlePath: "/lambda_fns/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/lambda_fns/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("PassPassPassPass");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/multiline_interpolation/foo.toffee"] = {
+ bundlePath: "/multiline_interpolation/foo.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/multiline_interpolation/foo.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (typeof a !== "undefined" && a !== null ? escape(a) : ''));
+ _to(" ");
+ _to("" + (typeof b !== "undefined" && b !== null ? escape(b) : ''));
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/multiline_interpolation/input.toffee"] = {
+ bundlePath: "/multiline_interpolation/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/multiline_interpolation/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (escape("Hello, " + "world")));
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to(" \n");
+ _ln(6);
+ _to("" + (partial("foo.toffee", {
+ a: "Goodbye" + ',',
+ b: "world"
+ })));
+ _ln(10);
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/multiline_interpolation/output.toffee"] = {
+ bundlePath: "/multiline_interpolation/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/multiline_interpolation/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("Hello, world\n");
+ _ln(2);
+ _to(" \n");
+ _ln(3);
+ _to("Goodbye, world");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const1.toffee"] = {
+ bundlePath: "/passback/const1.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const1.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vx = "vx1";
+ passback.vy = "vy1";
+ passback.x = "oh shit";
+ passback.y = "oh noze";
+ _ts(1);
+ _ln(6);
+ _to("\n");
+ _ln(7);
+ _to("This should output (1).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const2.toffee"] = {
+ bundlePath: "/passback/const2.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var vx, vy, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const2.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vz = "vz2";
+ vx = "Should not set.";
+ vy = "Should not set.";
+ _ts(1);
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _to("This should not output (2).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const3.toffee"] = {
+ bundlePath: "/passback/const3.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const3.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback["vx"] = "vx3";
+ passback["vy"] = "vy3";
+ _ts(1);
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("This should not output (3).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const4.toffee"] = {
+ bundlePath: "/passback/const4.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const4.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vx = "vx4";
+ passback.vy = "vy4";
+ partial("./const4_sub.toffee");
+ _ts(1);
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _to("This should not output (4).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const4_sub.toffee"] = {
+ bundlePath: "/passback/const4_sub.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const4_sub.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vx = "vx4_sub";
+ passback.vy = "vy4_sub";
+ _ts(1);
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("This should not output (4_sub).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const5.toffee"] = {
+ bundlePath: "/passback/const5.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const5.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vx = "vx5";
+ passback.vy = "vy5";
+ print(load("./const5_sub.toffee"));
+ passback.vx = vx;
+ passback.vy = vy;
+ _ts(1);
+ _ln(7);
+ _to("\n");
+ _ln(8);
+ _to("This should not output (5).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/const5_sub.toffee"] = {
+ bundlePath: "/passback/const5_sub.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/const5_sub.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ passback.vx = "vx5_sub";
+ passback.vy = "vy5_sub";
+ _ts(1);
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to("This should not output (5_sub).");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/input.toffee"] = {
+ bundlePath: "/passback/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _to("\n");
+ _ln(2);
+ _to("" + (partial("./const1.toffee")));
+ _to("\n");
+ _ln(3);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _to("\n");
+ _ln(4);
+ _to("" + (load("./const2.toffee")));
+ _to("\n");
+ _ln(5);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _to("\n");
+ _ln(6);
+ _to("" + (load("./const3.toffee")));
+ _to("\n");
+ _ln(7);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _to("\n");
+ _ln(8);
+ _to("" + (load("./const4.toffee")));
+ _to("\n");
+ _ln(9);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _to("\n");
+ _ln(10);
+ _to("" + (load("./const5.toffee")));
+ _to("\n");
+ _ln(11);
+ _to("vx,vy,vz = ");
+ _to("" + (typeof vx !== "undefined" && vx !== null ? escape(vx) : ''));
+ _to(",");
+ _to("" + (typeof vy !== "undefined" && vy !== null ? escape(vy) : ''));
+ _to(",");
+ _to("" + (typeof vz !== "undefined" && vz !== null ? escape(vz) : ''));
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/passback/output.toffee"] = {
+ bundlePath: "/passback/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/passback/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("vx,vy,vz = vx0,,\n");
+ _ln(2);
+ _to("\n");
+ _ln(3);
+ _to("This should output (1).\n");
+ _ln(4);
+ _to("vx,vy,vz = vx1,vy1,\n");
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _to("vx,vy,vz = vx1,vy1,vz2\n");
+ _ln(7);
+ _to("\n");
+ _ln(8);
+ _to("vx,vy,vz = vx3,vy3,vz2\n");
+ _ln(9);
+ _to("\n");
+ _ln(10);
+ _to("vx,vy,vz = vx4,vy4,vz2\n");
+ _ln(11);
+ _to("\n");
+ _ln(12);
+ _to("vx,vy,vz = vx5_sub,vy5_sub,vz2");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/plaintext/input.toffee"] = {
+ bundlePath: "/plaintext/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/plaintext/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("Hi there.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/plaintext/output.toffee"] = {
+ bundlePath: "/plaintext/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/plaintext/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("Hi there.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/post_process/buncha_junk.toffee"] = {
+ bundlePath: "/post_process/buncha_junk.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/post_process/buncha_junk.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("T3246h354is345-i3245s345-534a534-h534i543d534d534e534n543-m534e543s543s543ag5e534.543");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/post_process/input.toffee"] = {
+ bundlePath: "/post_process/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var clean, reverse, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/post_process/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (typeof greeting !== "undefined" && greeting !== null ? escape(greeting) : ''));
+ _to(", world. \n");
+ _ln(2);
+ _to("" + (partial('./signature.toffee')));
+ _to("\n");
+ _ln(3);
+ _ts(2);
+ _ts(2);
+ reverse = function(s) {
+ var c;
+ return ((function() {
+ var _i, _results;
+ _results = [];
+ for (_i = s.length - 1; _i >= 0; _i += -1) {
+ c = s[_i];
+ _results.push(c);
+ }
+ return _results;
+ })()).join("");
+ };
+ clean = function(s) {
+ var c;
+ return ((function() {
+ var _i, _len, _results;
+ _results = [];
+ for (_i = 0, _len = s.length; _i < _len; _i++) {
+ c = s[_i];
+ if (c.match(/[a-z\-]/gi)) {
+ _results.push(c);
+ }
+ }
+ return _results;
+ })()).join("");
+ };
+ _ts(1);
+ _ln(6);
+ _to("\n");
+ _ln(7);
+ _to("" + (partial('./buncha_junk.toffee', {
+ postProcess: function(s) {
+ return reverse(clean(s));
+ }
+ })));
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/post_process/output.toffee"] = {
+ bundlePath: "/post_process/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/post_process/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("This-is-a-hidden-message\n");
+ _ln(2);
+ _to("\n");
+ _ln(3);
+ _to(".dlrow leurc ,eybdooG\n");
+ _ln(4);
+ _to(" .dlrow ,olleH");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/post_process/signature.toffee"] = {
+ bundlePath: "/post_process/signature.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/post_process/signature.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("Goodbye, cruel world.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/render_no_args/input.toffee"] = {
+ bundlePath: "/render_no_args/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/render_no_args/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("No arguments passed.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/render_no_args/output.toffee"] = {
+ bundlePath: "/render_no_args/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/render_no_args/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("No arguments passed.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/snippets/foo/bar/body.toffee"] = {
+ bundlePath: "/snippets/foo/bar/body.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var msg, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/snippets/foo/bar/body.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ msg = msg || "Unknown message";
+ print(msg);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/snippets/foo/message.toffee"] = {
+ bundlePath: "/snippets/foo/message.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var from, msg, __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/snippets/foo/message.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(2);
+ from = from || "Unknown sender";
+ msg = msg || "Unknown message.";
+ print("From: " + from + "\n" + (snippet('./bar/body.toffee', {
+ msg: msg
+ })));
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/snippets/input.toffee"] = {
+ bundlePath: "/snippets/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/snippets/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("" + (partial("./foo/message.toffee")));
+ _to("\n");
+ _ln(2);
+ _to("" + (escape(snippet("./foo/message.toffee"))));
+ _to("\n");
+ _ln(3);
+ _to("" + (partial("./foo/message.toffee", {
+ from: "Sam"
+ })));
+ _to("\n");
+ _ln(4);
+ _to("" + (escape(snippet("./foo/message.toffee", {
+ from: "Max"
+ }))));
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/snippets/output.toffee"] = {
+ bundlePath: "/snippets/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/snippets/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("From: Preloaded sender\n");
+ _ln(2);
+ _to("Preloaded message.\n");
+ _ln(3);
+ _to("From: Unknown sender\n");
+ _ln(4);
+ _to("Unknown message.\n");
+ _ln(5);
+ _to("From: Sam\n");
+ _ln(6);
+ _to("Preloaded message.\n");
+ _ln(7);
+ _to("From: Max\n");
+ _ln(8);
+ _to("Unknown message.");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/special_cases/input.toffee"] = {
+ bundlePath: "/special_cases/input.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/special_cases/input.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(5);
+ _to("\n");
+ _ln(6);
+ _ts(2);
+ _ts(2);
+ _ts(1);
+ _ts(1);
+ _ln(7);
+ _to('"' + "PASSED" + '"');
+ _ts(2);
+ _ts(1);
+ _ln(8);
+ _to("\n");
+ _ln(9);
+ _ts(2);
+ _ts(1);
+ _ln(13);
+ _to("\n");
+ _ln(14);
+ _to("\n");
+ _ln(15);
+ _to(" ");
+ _to("" + (print("" + 'click & clack' + " ")));
+ _to("\n");
+ _ln(16);
+ _to("
\n");
+ _ln(17);
+ _ts(2);
+ _ts(1);
+ _ln(21);
+ _to("\n");
+ _ln(22);
+ _to("A backslash is a \\\n");
+ _ln(23);
+ _to("");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
+
+;
+(function() {
+ var tmpl;
+
+ tmpl = toffee.templates["/special_cases/output.toffee"] = {
+ bundlePath: "/special_cases/output.toffee"
+ };
+
+ tmpl.render = tmpl.pub = function(__locals) {
+ var __repress, _ln, _ref, _to, _ts;
+ __locals = __locals || {};
+ __repress = (_ref = __locals.__toffee) != null ? _ref.repress : void 0;
+ _to = function(x) {
+ return __locals.__toffee.out.push(x);
+ };
+ _ln = function(x) {
+ return __locals.__toffee.lineno = x;
+ };
+ _ts = function(x) {
+ return __locals.__toffee.state = x;
+ };
+ toffee.__augmentLocals(__locals, "/special_cases/output.toffee");
+ with (__locals) {;
+ __toffee.out = [];
+ _ts(1);
+ _ts(1);
+ _ln(1);
+ _to("\n");
+ _ln(2);
+ _to('"' + "PASSED\"\n");
+ _ln(3);
+ _to("\n");
+ _ln(4);
+ _to("\n");
+ _ln(5);
+ _to(" click & clack \n");
+ _ln(6);
+ _to("
\n");
+ _ln(7);
+ _to("\n");
+ _ln(8);
+ _to("A backslash is a \\\n");
+ _ln(9);
+ _to("");
+ _ts(2);
+ __toffee.res = __toffee.out.join("");
+ if (typeof postProcess !== "undefined" && postProcess !== null) {
+ __toffee.res = postProcess(__toffee.res);
+ }
+ if (!__repress) {
+ return __toffee.res;
+ } else {
+ return "";
+ }
+ };
+
+ true; } /* closing JS 'with' */ ;
+
+ if (typeof __toffee_run_input !== "undefined" && __toffee_run_input !== null) {
+ return tmpl.pub(__toffee_run_input);
+ }
+
+}).call(this);
diff --git a/test/express4/public/javascripts/toffee.js b/test/express4/public/javascripts/toffee.js
new file mode 100644
index 0000000..5d6b01c
--- /dev/null
+++ b/test/express4/public/javascripts/toffee.js
@@ -0,0 +1,205 @@
+var toffee;
+
+if (typeof toffee === "undefined" || toffee === null) {
+ toffee = {};
+}
+
+if (!toffee.templates) {
+ toffee.templates = {};
+}
+
+toffee.states = {
+ "TOFFEE": 1,
+ "COFFEE": 2
+};
+
+toffee.__json = function(locals, o, opts) {
+ opts || (opts = {});
+ opts.indent || (opts.indent = "");
+ if (o == null) {
+ return "null";
+ } else {
+ return "" + JSON.stringify(o, null, opts.indent).replace(//g, '\\u003E').replace(/&/g, '\\u0026').replace(/\u2028/g, '\\u2028').replace(/\u2029/g, '\\u2029').replace(/\u200e/g, '\\u200e').replace(/\u200f/g, '\\u200f').replace(/\u202a/g, '\\u202a').replace(/\u202b/g, '\\u202b').replace(/\u202c/g, '\\u202c').replace(/\u202d/g, '\\u202d').replace(/\u202e/g, '\\u202e').replace(/\u206a/g, '\\u206a').replace(/\u206b/g, '\\u206b').replace(/\u206c/g, '\\u206c').replace(/\u206d/g, '\\u206d').replace(/\u206e/g, '\\u206e').replace(/\u206f/g, '\\u206f').replace(/\u2066/g, '\\u2066').replace(/\u2067/g, '\\u2067').replace(/\u2068/g, '\\u2068').replace(/\u2069/g, '\\u2069');
+ }
+};
+
+toffee.__raw = function(locals, o) {
+ return o;
+};
+
+toffee.__html = function(locals, o) {
+ return ("" + o).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/\u200e/g, '').replace(/\u200f/g, '').replace(/\u202a/g, '').replace(/\u202b/g, '').replace(/\u202c/g, '').replace(/\u202d/g, '').replace(/\u202e/g, '').replace(/\u206a/g, '').replace(/\u206b/g, '').replace(/\u206c/g, '').replace(/\u206d/g, '').replace(/\u206e/g, '').replace(/\u206f/g, '').replace(/\u2066/g, '').replace(/\u2067/g, '').replace(/\u2068/g, '').replace(/\u2069/g, '');
+};
+
+toffee.__escape = function(locals, o) {
+ var ae;
+ if (locals.__toffee.autoEscape != null) {
+ ae = locals.__toffee.autoEscape;
+ } else if (true) {
+ ae = true;
+ } else {
+ ae = true;
+ }
+ if (ae) {
+ if (o === void 0) {
+ return '';
+ }
+ if ((o != null) && (typeof o) === "object") {
+ return locals.json(o);
+ }
+ return locals.html(o);
+ }
+ return o;
+};
+
+toffee.__augmentLocals = function(locals, bundle_path) {
+ var _l, _t;
+ _l = locals;
+ _t = _l.__toffee = {
+ out: []
+ };
+ if (_l.print == null) {
+ _l.print = function(o) {
+ return toffee.__print(_l, o);
+ };
+ }
+ if (_l.json == null) {
+ _l.json = function(o, opts) {
+ return toffee.__json(_l, o, opts);
+ };
+ }
+ if (_l.raw == null) {
+ _l.raw = function(o) {
+ return toffee.__raw(_l, o);
+ };
+ }
+ if (_l.html == null) {
+ _l.html = function(o) {
+ return toffee.__html(_l, o);
+ };
+ }
+ if (_l.escape == null) {
+ _l.escape = function(o) {
+ return toffee.__escape(_l, o);
+ };
+ }
+ if (_l.partial == null) {
+ _l.partial = function(path, vars) {
+ return toffee.__partial(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.snippet == null) {
+ _l.snippet = function(path, vars) {
+ return toffee.__snippet(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.load == null) {
+ _l.load = function(path, vars) {
+ return toffee.__load(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ _t.print = _l.print;
+ _t.json = _l.json;
+ _t.raw = _l.raw;
+ _t.html = _l.html;
+ _t.escape = _l.escape;
+ _t.partial = _l.partial;
+ _t.snippet = _l.snippet;
+ return _t.load = _l.load;
+};
+
+toffee.__print = function(locals, o) {
+ if (locals.__toffee.state === toffee.states.COFFEE) {
+ locals.__toffee.out.push(o);
+ return '';
+ } else {
+ return "" + o;
+ }
+};
+
+toffee.__normalize = function(path) {
+ var np, part, parts, _i, _len;
+ if ((path == null) || path === "/") {
+ return path;
+ } else {
+ parts = path.split("/");
+ np = [];
+ if (parts[0]) {
+ np.push('');
+ }
+ for (_i = 0, _len = parts.length; _i < _len; _i++) {
+ part = parts[_i];
+ if (part === "..") {
+ if (np.length > 1) {
+ np.pop();
+ } else {
+ np.push(part);
+ }
+ } else {
+ if (part !== ".") {
+ np.push(part);
+ }
+ }
+ }
+ path = np.join("/");
+ if (!path) {
+ path = "/";
+ }
+ return path;
+ }
+};
+
+toffee.__partial = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__snippet = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.noInheritance = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__load = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.repress = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__inlineInclude = function(path, locals, parent_locals) {
+ var k, options, res, reserved, v, _i, _len, _ref, _ref1;
+ options = locals || {};
+ options.passback = {};
+ options.__toffee = options.__toffee || {};
+ reserved = {};
+ _ref = ["passback", "load", "print", "partial", "snippet", "layout", "__toffee", "postProcess"];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ k = _ref[_i];
+ reserved[k] = true;
+ }
+ if (!options.__toffee.noInheritance) {
+ for (k in parent_locals) {
+ v = parent_locals[k];
+ if ((locals != null ? locals[k] : void 0) == null) {
+ if (reserved[k] == null) {
+ options[k] = v;
+ }
+ }
+ }
+ }
+ if (!toffee.templates[path]) {
+ return "Inline toffee include: Could not find " + path;
+ } else {
+ res = toffee.templates[path].pub(options);
+ _ref1 = options.passback;
+ for (k in _ref1) {
+ v = _ref1[k];
+ parent_locals[k] = v;
+ }
+ return res;
+ }
+};
diff --git a/test/express3/public/stylesheets/style.css b/test/express4/public/stylesheets/style.css
similarity index 100%
rename from test/express3/public/stylesheets/style.css
rename to test/express4/public/stylesheets/style.css
diff --git a/test/express4/views/index.toffee b/test/express4/views/index.toffee
new file mode 100644
index 0000000..baf5c2a
--- /dev/null
+++ b/test/express4/views/index.toffee
@@ -0,0 +1,654 @@
+
+
+ Testing Toffee in the Browser
+
+
+
+
+
+
+
+
+ FILE EXPECTED OUTPUT SERVER RENDER BROWSER RENDER
+
+
+
+
+ bad_unicode
+ \u2028:
+
+\u2029:
+
+
+HI 2028:
+HI 2028:
+
+ #{partial '../../cases/bad_unicode/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ big_file
+ 0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11... 12... 13... 14... 15... 16... 17... 18... 19... 20... 21... 22... 23... 24... 25... 26... 27... 28... 29... 30... 31... 32... 33... 34... 35... 36... 37... 38... 39... 40... 41... 42... 43... 44... 45... 46... 47... 48... 49... 50... 51... 52... 53... 54... 55... 56... 57... 58... 59... 60... 61... 62... 63... 64... 65... 66... 67... 68... 70... 70... 71... 72... 73... 74... 75... 76... 77... 78... 79... 80... 81... 82... 83... 84... 85... 86... 87... 88... 89... 90... 91... 92... 93... 94... 95... 96... 97... 98... 99... 100... 101... 102... 103... 104... 105... 106... 107... 108... 109... 110... 111... 112... 113... 114... 115... 116... 117... 118... 119... 120... 121... 122... 123... 124... 125... 126... 127... 128... 129... 130... 131... 132... 133... 134... 135... 136... 137... 138... 139... 140... 141... 142... 143... 144... 145... 146... 147... 148... 149... 150... 151... 152... 153... 154... 155... 156... 157... 158... 159... 160... 162...162... 163... 164... 165... 166... 167... 168... 169... 170... 171... 172... 173... 174... 175... 176... 177... 178... 179... 180... 181... 182... 183... 184... 185... 186... 187... 188... 189... 190... 191... 192... 193... 194... 195... 196... 197... 198... 199... 200... 201... 202... 203... 204... 205... 206... 207... 208... 209... 210... 211... 212... 213... 214... 215... 216... 217... 218... 219... 220... 221... 222... 223... 224... 225... 226... 227... 228... 229... 230... 232... 232... 233... 234... 235... 236... 237... 238... 239... 240... 241... 242... 243... 244... 245... 246... 247... 248... 249... 250... 251... 252... 253... 254... 255... 256... 257... 258... 259... 260... 261... 262... 263... 264... 265... 266... 267... 268... 269... 270... 271... 272... 273... 274... 275... 276... 277... 278... 279... 280... 281... 282... 283... 284... 285... 286... 287... 288... 289... 290... 291... 292... 293... 294... 295... 296... 297... 298... 299... 300... 301... 302... 303... 304... 305... 306... 307... 308... 309... 310... 311... 312... 313... 314... 315... 316... 317... 318... 319... 320... 321... 322... 324...
+ #{partial '../../cases/big_file/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ comments
+
+Pass 1
+
+Pass 2
+
+Pass 3
+
+ #{partial '../../cases/comments/input.toffee', {
+ "greeting": "Hello"
+}}
+
+
+
+
+
+
+
+
+
+
+
+ custom_escape
+
+ custom x = Helloworldscriptvarx100script
+ custom y = td
+ custom z = clickclack
+ custom w = 12objectObject
+
+ #{partial '../../cases/custom_escape/input.toffee', {
+ escape: (s) -> "#{s}".replace /[^a-z0-9]/gi, ''
+}}
+
+
+
+
+
+
+
+
+
+
+
+ eco_compare
+
+ okcupid
+ A site for singles
+
+ tallygram
+ A site for anyone
+
+
+You have 3 female friends.
+ #{partial '../../cases/eco_compare/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ escape
+
+ default x = "Hello world"
+ default y = <hr />
+ default z = click&clack
+ default w = [1,2,{"place":"The Dreadfort","evil \u003Cb\u003E\"code\"\u003C/b\u003E":"\u003Ci\u003Eitalic\u003C/i\u003E"}]
+ default r = eol
+ default w.foo = eol
+ default v = ["\u2028","\u2029"]
+ default dir = ["hi\u202ethere"]
+ default dir0 = hithere
+
+
+ raw x = "Hello world"
+ raw y =
+ raw z = click&clack
+ raw w = 1,2,[object Object]
+
+
+ w_as_json_stringify=[1,2,{"place":"The Dreadfort","evil <b>\"code\"</b>":"<i>italic</i>"}]
+ w_as_json_stringify_raw=[1,2,{"place":"The Dreadfort","evil \"code\" ":"italic "}]
+
+
+
+ raw printed x = "Hello world"
+ raw printed y =
+ raw printed z = click&clack
+ raw printed w = 1,2,[object Object]
+
+
+ json printed x = "\"Hello world\""
+ json printed y = "\u003Chr /\u003E"
+ json printed z = "click\u0026clack"
+ json printed w = [1,2,{"place":"The Dreadfort","evil \u003Cb\u003E\"code\"\u003C/b\u003E":"\u003Ci\u003Eitalic\u003C/i\u003E"}]
+ json printed v = ["\u2028","\u2029"]
+
+
+ html printed longhand x = "Hello world"
+ html printed longhand y = <hr />
+ html printed longhand z = click&clack
+ html printed longhand w = 1,2,[object Object]
+
+
+ #{partial '../../cases/escape/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ hello_world
+ Hello, world.
+ #{partial '../../cases/hello_world/input.toffee', {
+ "greeting": "Hello"
+}}
+
+
+
+
+
+
+
+
+
+
+
+ include_order
+ 1
+2
+hia
+
+b
+3
+4
+ #{partial '../../cases/include_order/input.toffee', {
+ "greeting": "Hello"
+}}
+
+
+
+
+
+
+
+
+
+
+
+ include_recursion
+ 10...9...8...7...6...5...4...3...2...1...blastoff!
+ #{partial '../../cases/include_recursion/input.toffee', {
+ "countdown" : 10
+}}
+
+
+
+
+
+
+
+
+
+
+
+ include_techniques
+ From: Chris <ccoyne77@gmail>
+Msg: Hello, world
+
+From: Max & Sam
+Msg: Hello, world
+
+From: Christian
+Msg: Hello, world
+From: Jennie
+Msg: Hello, world
+From: Unknown
+Msg: Hello, world
+
+ #{partial '../../cases/include_techniques/input.toffee', {
+}}
+
+
+
+
+
+
+
+
+
+
+
+ indent_attack
+
+ Pass1Pass2
+
+
+Pass3Pass4
+
+
+Pass5Pass6
+
+Pass7Pass8
+
+...passed with flying colors.
+
+ Pass12Pass13Pass14Pass15Pass16(a perfect square)Pass17Pass18Pass19
+ Pass20
+
+ #{partial '../../cases/indent_attack/input.toffee', {
+}}
+
+
+
+
+
+
+
+
+
+
+
+ json_formatting
+
+{"foo":[1,2,3],"bar":{"car":[4,5,"\u003C/html",{"zar":[6,7,null]}]}}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+{
+ "foo": [
+ 1,
+ 2,
+ 3
+ ],
+ "bar": {
+ "car": [
+ 4,
+ 5,
+ "\u003C/html",
+ {
+ "zar": [
+ 6,
+ 7,
+ null
+ ]
+ }
+ ]
+ }
+}
+[
+ 1,
+ 2,
+ "\u003C/script\u003E\""
+]
+
+ #{partial '../../cases/json_formatting/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ junk
+
+
+ #{partial '../../cases/junk/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ lambda_fns
+ PassPassPassPass
+ #{partial '../../cases/lambda_fns/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ multiline_interpolation
+ Hello, world
+
+Goodbye, world
+ #{partial '../../cases/multiline_interpolation/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ passback
+ vx,vy,vz = vx0,,
+
+This should output (1).
+vx,vy,vz = vx1,vy1,
+
+vx,vy,vz = vx1,vy1,vz2
+
+vx,vy,vz = vx3,vy3,vz2
+
+vx,vy,vz = vx4,vy4,vz2
+
+vx,vy,vz = vx5_sub,vy5_sub,vz2
+ #{partial '../../cases/passback/input.toffee', {
+ "vx": "vx0",
+ "x" : "hi"
+}}
+
+
+
+
+
+
+
+
+
+
+
+ plaintext
+ Hi there.
+ #{partial '../../cases/plaintext/input.toffee', {}}
+
+
+
+
+
+
+
+
+
+
+
+ post_process
+ This-is-a-hidden-message
+
+.dlrow leurc ,eybdooG
+ .dlrow ,olleH
+ #{partial '../../cases/post_process/input.toffee', {
+ greeting: 'Hello'
+ postProcess: (s) -> (c for c in s by -1).join ''
+}}
+
+
+
+
+
+
+
+
+
+
+
+ render_no_args
+ No arguments passed.
+ #{partial '../../cases/render_no_args/input.toffee', }
+
+
+
+
+
+
+
+
+
+
+
+ snippets
+ From: Preloaded sender
+Preloaded message.
+From: Unknown sender
+Unknown message.
+From: Sam
+Preloaded message.
+From: Max
+Unknown message.
+ #{partial '../../cases/snippets/input.toffee', {
+ "from": "Preloaded sender",
+ "msg" : "Preloaded message."
+}}
+
+
+
+
+
+
+
+
+
+
+
+ special_cases
+
+"PASSED"
+
+
+ click & clack
+
+
+A backslash is a \
+
+ #{partial '../../cases/special_cases/input.toffee', {}}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/test/express3/views/subdir1/hello_world.toffee b/test/express4/views/subdir1/hello_world.toffee
similarity index 100%
rename from test/express3/views/subdir1/hello_world.toffee
rename to test/express4/views/subdir1/hello_world.toffee
diff --git a/test/express3/views/subdir2/foo/goodbye.toffee b/test/express4/views/subdir2/foo/goodbye.toffee
similarity index 100%
rename from test/express3/views/subdir2/foo/goodbye.toffee
rename to test/express4/views/subdir2/foo/goodbye.toffee
diff --git a/test/express3/views/subdir2/goodbye_world.toffee b/test/express4/views/subdir2/goodbye_world.toffee
similarity index 100%
rename from test/express3/views/subdir2/goodbye_world.toffee
rename to test/express4/views/subdir2/goodbye_world.toffee
diff --git a/test/express4_error_handling/app.coffee b/test/express4_error_handling/app.coffee
new file mode 100644
index 0000000..e9726d0
--- /dev/null
+++ b/test/express4_error_handling/app.coffee
@@ -0,0 +1,58 @@
+toffee = require '../../index.js'
+
+run = (port, express_engine, cb) ->
+ express = require 'express'
+ routes = require './routes'
+ http = require 'http'
+
+ app = express()
+
+
+ app.configure ->
+
+ app.set 'port', port
+ app.set 'views', __dirname + '/views'
+ app.engine 'toffee', express_engine
+ app.use express.favicon()
+ app.use express.logger 'dev'
+ app.use express.bodyParser()
+ app.use express.methodOverride()
+ app.use app.router
+ app.use express.static __dirname + '/public'
+
+ app.configure 'development', ->
+ app.use express.errorHandler()
+
+ app.get '/', routes.index
+ app.get '/:path([^ ]+)', routes.path
+
+ http.createServer(app).listen app.get('port'), ->
+ console.log "Express server listening on port #{app.get('port')}"
+ if cb? then cb()
+
+# -----------------------------------------------------------------------
+
+run_all = (cb) ->
+
+ # run a standard version on port 3034
+ # -----------------------------------
+ run 3034, toffee.__express, ->
+
+ # run a version that doesn't catch errors on port 3035
+ # ----------------------------------------------------
+ e2 = new toffee.engine {
+ prettyPrintErrors: false
+ }
+ run 3035, toffee.toExpress(e2), ->
+
+ cb()
+
+# -----------------------------------------------------------------------
+
+
+if not module.parent
+ run_all ->
+ console.log "All running"
+
+else
+ exports.run = (cb) -> run_all cb
\ No newline at end of file
diff --git a/test/express3/package.json b/test/express4_error_handling/package.json
similarity index 100%
rename from test/express3/package.json
rename to test/express4_error_handling/package.json
diff --git a/test/express4_error_handling/public/javascripts/jquery-1.9.0.min.js b/test/express4_error_handling/public/javascripts/jquery-1.9.0.min.js
new file mode 100644
index 0000000..50d1b22
--- /dev/null
+++ b/test/express4_error_handling/public/javascripts/jquery-1.9.0.min.js
@@ -0,0 +1,4 @@
+/*! jQuery v1.9.0 | (c) 2005, 2012 jQuery Foundation, Inc. | jquery.org/license */(function(e,t){"use strict";function n(e){var t=e.length,n=st.type(e);return st.isWindow(e)?!1:1===e.nodeType&&t?!0:"array"===n||"function"!==n&&(0===t||"number"==typeof t&&t>0&&t-1 in e)}function r(e){var t=Tt[e]={};return st.each(e.match(lt)||[],function(e,n){t[n]=!0}),t}function i(e,n,r,i){if(st.acceptData(e)){var o,a,s=st.expando,u="string"==typeof n,l=e.nodeType,c=l?st.cache:e,f=l?e[s]:e[s]&&s;if(f&&c[f]&&(i||c[f].data)||!u||r!==t)return f||(l?e[s]=f=K.pop()||st.guid++:f=s),c[f]||(c[f]={},l||(c[f].toJSON=st.noop)),("object"==typeof n||"function"==typeof n)&&(i?c[f]=st.extend(c[f],n):c[f].data=st.extend(c[f].data,n)),o=c[f],i||(o.data||(o.data={}),o=o.data),r!==t&&(o[st.camelCase(n)]=r),u?(a=o[n],null==a&&(a=o[st.camelCase(n)])):a=o,a}}function o(e,t,n){if(st.acceptData(e)){var r,i,o,a=e.nodeType,u=a?st.cache:e,l=a?e[st.expando]:st.expando;if(u[l]){if(t&&(r=n?u[l]:u[l].data)){st.isArray(t)?t=t.concat(st.map(t,st.camelCase)):t in r?t=[t]:(t=st.camelCase(t),t=t in r?[t]:t.split(" "));for(i=0,o=t.length;o>i;i++)delete r[t[i]];if(!(n?s:st.isEmptyObject)(r))return}(n||(delete u[l].data,s(u[l])))&&(a?st.cleanData([e],!0):st.support.deleteExpando||u!=u.window?delete u[l]:u[l]=null)}}}function a(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(Nt,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:wt.test(r)?st.parseJSON(r):r}catch(o){}st.data(e,n,r)}else r=t}return r}function s(e){var t;for(t in e)if(("data"!==t||!st.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}function u(){return!0}function l(){return!1}function c(e,t){do e=e[t];while(e&&1!==e.nodeType);return e}function f(e,t,n){if(t=t||0,st.isFunction(t))return st.grep(e,function(e,r){var i=!!t.call(e,r,e);return i===n});if(t.nodeType)return st.grep(e,function(e){return e===t===n});if("string"==typeof t){var r=st.grep(e,function(e){return 1===e.nodeType});if(Wt.test(t))return st.filter(t,r,!n);t=st.filter(t,r)}return st.grep(e,function(e){return st.inArray(e,t)>=0===n})}function p(e){var t=zt.split("|"),n=e.createDocumentFragment();if(n.createElement)for(;t.length;)n.createElement(t.pop());return n}function d(e,t){return e.getElementsByTagName(t)[0]||e.appendChild(e.ownerDocument.createElement(t))}function h(e){var t=e.getAttributeNode("type");return e.type=(t&&t.specified)+"/"+e.type,e}function g(e){var t=nn.exec(e.type);return t?e.type=t[1]:e.removeAttribute("type"),e}function m(e,t){for(var n,r=0;null!=(n=e[r]);r++)st._data(n,"globalEval",!t||st._data(t[r],"globalEval"))}function y(e,t){if(1===t.nodeType&&st.hasData(e)){var n,r,i,o=st._data(e),a=st._data(t,o),s=o.events;if(s){delete a.handle,a.events={};for(n in s)for(r=0,i=s[n].length;i>r;r++)st.event.add(t,n,s[n][r])}a.data&&(a.data=st.extend({},a.data))}}function v(e,t){var n,r,i;if(1===t.nodeType){if(n=t.nodeName.toLowerCase(),!st.support.noCloneEvent&&t[st.expando]){r=st._data(t);for(i in r.events)st.removeEvent(t,i,r.handle);t.removeAttribute(st.expando)}"script"===n&&t.text!==e.text?(h(t).text=e.text,g(t)):"object"===n?(t.parentNode&&(t.outerHTML=e.outerHTML),st.support.html5Clone&&e.innerHTML&&!st.trim(t.innerHTML)&&(t.innerHTML=e.innerHTML)):"input"===n&&Zt.test(e.type)?(t.defaultChecked=t.checked=e.checked,t.value!==e.value&&(t.value=e.value)):"option"===n?t.defaultSelected=t.selected=e.defaultSelected:("input"===n||"textarea"===n)&&(t.defaultValue=e.defaultValue)}}function b(e,n){var r,i,o=0,a=e.getElementsByTagName!==t?e.getElementsByTagName(n||"*"):e.querySelectorAll!==t?e.querySelectorAll(n||"*"):t;if(!a)for(a=[],r=e.childNodes||e;null!=(i=r[o]);o++)!n||st.nodeName(i,n)?a.push(i):st.merge(a,b(i,n));return n===t||n&&st.nodeName(e,n)?st.merge([e],a):a}function x(e){Zt.test(e.type)&&(e.defaultChecked=e.checked)}function T(e,t){if(t in e)return t;for(var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=Nn.length;i--;)if(t=Nn[i]+n,t in e)return t;return r}function w(e,t){return e=t||e,"none"===st.css(e,"display")||!st.contains(e.ownerDocument,e)}function N(e,t){for(var n,r=[],i=0,o=e.length;o>i;i++)n=e[i],n.style&&(r[i]=st._data(n,"olddisplay"),t?(r[i]||"none"!==n.style.display||(n.style.display=""),""===n.style.display&&w(n)&&(r[i]=st._data(n,"olddisplay",S(n.nodeName)))):r[i]||w(n)||st._data(n,"olddisplay",st.css(n,"display")));for(i=0;o>i;i++)n=e[i],n.style&&(t&&"none"!==n.style.display&&""!==n.style.display||(n.style.display=t?r[i]||"":"none"));return e}function C(e,t,n){var r=mn.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function k(e,t,n,r,i){for(var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;4>o;o+=2)"margin"===n&&(a+=st.css(e,n+wn[o],!0,i)),r?("content"===n&&(a-=st.css(e,"padding"+wn[o],!0,i)),"margin"!==n&&(a-=st.css(e,"border"+wn[o]+"Width",!0,i))):(a+=st.css(e,"padding"+wn[o],!0,i),"padding"!==n&&(a+=st.css(e,"border"+wn[o]+"Width",!0,i)));return a}function E(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=ln(e),a=st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=un(e,t,o),(0>i||null==i)&&(i=e.style[t]),yn.test(i))return i;r=a&&(st.support.boxSizingReliable||i===e.style[t]),i=parseFloat(i)||0}return i+k(e,t,n||(a?"border":"content"),r,o)+"px"}function S(e){var t=V,n=bn[e];return n||(n=A(e,t),"none"!==n&&n||(cn=(cn||st("").css("cssText","display:block !important")).appendTo(t.documentElement),t=(cn[0].contentWindow||cn[0].contentDocument).document,t.write(""),t.close(),n=A(e,t),cn.detach()),bn[e]=n),n}function A(e,t){var n=st(t.createElement(e)).appendTo(t.body),r=st.css(n[0],"display");return n.remove(),r}function j(e,t,n,r){var i;if(st.isArray(t))st.each(t,function(t,i){n||kn.test(e)?r(e,i):j(e+"["+("object"==typeof i?t:"")+"]",i,n,r)});else if(n||"object"!==st.type(t))r(e,t);else for(i in t)j(e+"["+i+"]",t[i],n,r)}function D(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(lt)||[];if(st.isFunction(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function L(e,n,r,i){function o(u){var l;return a[u]=!0,st.each(e[u]||[],function(e,u){var c=u(n,r,i);return"string"!=typeof c||s||a[c]?s?!(l=c):t:(n.dataTypes.unshift(c),o(c),!1)}),l}var a={},s=e===$n;return o(n.dataTypes[0])||!a["*"]&&o("*")}function H(e,n){var r,i,o=st.ajaxSettings.flatOptions||{};for(r in n)n[r]!==t&&((o[r]?e:i||(i={}))[r]=n[r]);return i&&st.extend(!0,e,i),e}function M(e,n,r){var i,o,a,s,u=e.contents,l=e.dataTypes,c=e.responseFields;for(o in c)o in r&&(n[c[o]]=r[o]);for(;"*"===l[0];)l.shift(),i===t&&(i=e.mimeType||n.getResponseHeader("Content-Type"));if(i)for(o in u)if(u[o]&&u[o].test(i)){l.unshift(o);break}if(l[0]in r)a=l[0];else{for(o in r){if(!l[0]||e.converters[o+" "+l[0]]){a=o;break}s||(s=o)}a=a||s}return a?(a!==l[0]&&l.unshift(a),r[a]):t}function q(e,t){var n,r,i,o,a={},s=0,u=e.dataTypes.slice(),l=u[0];if(e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u[1])for(n in e.converters)a[n.toLowerCase()]=e.converters[n];for(;i=u[++s];)if("*"!==i){if("*"!==l&&l!==i){if(n=a[l+" "+i]||a["* "+i],!n)for(r in a)if(o=r.split(" "),o[1]===i&&(n=a[l+" "+o[0]]||a["* "+o[0]])){n===!0?n=a[r]:a[r]!==!0&&(i=o[0],u.splice(s--,0,i));break}if(n!==!0)if(n&&e["throws"])t=n(t);else try{t=n(t)}catch(c){return{state:"parsererror",error:n?c:"No conversion from "+l+" to "+i}}}l=i}return{state:"success",data:t}}function _(){try{return new e.XMLHttpRequest}catch(t){}}function F(){try{return new e.ActiveXObject("Microsoft.XMLHTTP")}catch(t){}}function O(){return setTimeout(function(){Qn=t}),Qn=st.now()}function B(e,t){st.each(t,function(t,n){for(var r=(rr[t]||[]).concat(rr["*"]),i=0,o=r.length;o>i;i++)if(r[i].call(e,t,n))return})}function P(e,t,n){var r,i,o=0,a=nr.length,s=st.Deferred().always(function(){delete u.elem}),u=function(){if(i)return!1;for(var t=Qn||O(),n=Math.max(0,l.startTime+l.duration-t),r=n/l.duration||0,o=1-r,a=0,u=l.tweens.length;u>a;a++)l.tweens[a].run(o);return s.notifyWith(e,[l,o,n]),1>o&&u?n:(s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:st.extend({},t),opts:st.extend(!0,{specialEasing:{}},n),originalProperties:t,originalOptions:n,startTime:Qn||O(),duration:n.duration,tweens:[],createTween:function(t,n){var r=st.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;r>n;n++)l.tweens[n].run(1);return t?s.resolveWith(e,[l,t]):s.rejectWith(e,[l,t]),this}}),c=l.props;for(R(c,l.opts.specialEasing);a>o;o++)if(r=nr[o].call(l,e,c,l.opts))return r;return B(l,c),st.isFunction(l.opts.start)&&l.opts.start.call(e,l),st.fx.timer(st.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}function R(e,t){var n,r,i,o,a;for(n in e)if(r=st.camelCase(n),i=t[r],o=e[n],st.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),a=st.cssHooks[r],a&&"expand"in a){o=a.expand(o),delete e[r];for(n in o)n in e||(e[n]=o[n],t[n]=i)}else t[r]=i}function W(e,t,n){var r,i,o,a,s,u,l,c,f,p=this,d=e.style,h={},g=[],m=e.nodeType&&w(e);n.queue||(c=st._queueHooks(e,"fx"),null==c.unqueued&&(c.unqueued=0,f=c.empty.fire,c.empty.fire=function(){c.unqueued||f()}),c.unqueued++,p.always(function(){p.always(function(){c.unqueued--,st.queue(e,"fx").length||c.empty.fire()})})),1===e.nodeType&&("height"in t||"width"in t)&&(n.overflow=[d.overflow,d.overflowX,d.overflowY],"inline"===st.css(e,"display")&&"none"===st.css(e,"float")&&(st.support.inlineBlockNeedsLayout&&"inline"!==S(e.nodeName)?d.zoom=1:d.display="inline-block")),n.overflow&&(d.overflow="hidden",st.support.shrinkWrapBlocks||p.done(function(){d.overflow=n.overflow[0],d.overflowX=n.overflow[1],d.overflowY=n.overflow[2]}));for(r in t)if(o=t[r],Zn.exec(o)){if(delete t[r],u=u||"toggle"===o,o===(m?"hide":"show"))continue;g.push(r)}if(a=g.length){s=st._data(e,"fxshow")||st._data(e,"fxshow",{}),"hidden"in s&&(m=s.hidden),u&&(s.hidden=!m),m?st(e).show():p.done(function(){st(e).hide()}),p.done(function(){var t;st._removeData(e,"fxshow");for(t in h)st.style(e,t,h[t])});for(r=0;a>r;r++)i=g[r],l=p.createTween(i,m?s[i]:0),h[i]=s[i]||st.style(e,i),i in s||(s[i]=l.start,m&&(l.end=l.start,l.start="width"===i||"height"===i?1:0))}}function $(e,t,n,r,i){return new $.prototype.init(e,t,n,r,i)}function I(e,t){var n,r={height:e},i=0;for(t=t?1:0;4>i;i+=2-t)n=wn[i],r["margin"+n]=r["padding"+n]=e;return t&&(r.opacity=r.width=e),r}function z(e){return st.isWindow(e)?e:9===e.nodeType?e.defaultView||e.parentWindow:!1}var X,U,V=e.document,Y=e.location,J=e.jQuery,G=e.$,Q={},K=[],Z="1.9.0",et=K.concat,tt=K.push,nt=K.slice,rt=K.indexOf,it=Q.toString,ot=Q.hasOwnProperty,at=Z.trim,st=function(e,t){return new st.fn.init(e,t,X)},ut=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,lt=/\S+/g,ct=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,ft=/^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/,pt=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,dt=/^[\],:{}\s]*$/,ht=/(?:^|:|,)(?:\s*\[)+/g,gt=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,mt=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,yt=/^-ms-/,vt=/-([\da-z])/gi,bt=function(e,t){return t.toUpperCase()},xt=function(){V.addEventListener?(V.removeEventListener("DOMContentLoaded",xt,!1),st.ready()):"complete"===V.readyState&&(V.detachEvent("onreadystatechange",xt),st.ready())};st.fn=st.prototype={jquery:Z,constructor:st,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:ft.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof st?n[0]:n,st.merge(this,st.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:V,!0)),pt.test(i[1])&&st.isPlainObject(n))for(i in n)st.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=V.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=V,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):st.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),st.makeArray(e,this))},selector:"",length:0,size:function(){return this.length},toArray:function(){return nt.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=st.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return st.each(this,e,t)},ready:function(e){return st.ready.promise().done(e),this},slice:function(){return this.pushStack(nt.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(st.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:tt,sort:[].sort,splice:[].splice},st.fn.init.prototype=st.fn,st.extend=st.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},u=1,l=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},u=2),"object"==typeof s||st.isFunction(s)||(s={}),l===u&&(s=this,--u);l>u;u++)if(null!=(e=arguments[u]))for(n in e)r=s[n],i=e[n],s!==i&&(c&&i&&(st.isPlainObject(i)||(o=st.isArray(i)))?(o?(o=!1,a=r&&st.isArray(r)?r:[]):a=r&&st.isPlainObject(r)?r:{},s[n]=st.extend(c,a,i)):i!==t&&(s[n]=i));return s},st.extend({noConflict:function(t){return e.$===st&&(e.$=G),t&&e.jQuery===st&&(e.jQuery=J),st},isReady:!1,readyWait:1,holdReady:function(e){e?st.readyWait++:st.ready(!0)},ready:function(e){if(e===!0?!--st.readyWait:!st.isReady){if(!V.body)return setTimeout(st.ready);st.isReady=!0,e!==!0&&--st.readyWait>0||(U.resolveWith(V,[st]),st.fn.trigger&&st(V).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===st.type(e)},isArray:Array.isArray||function(e){return"array"===st.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?Q[it.call(e)]||"object":typeof e},isPlainObject:function(e){if(!e||"object"!==st.type(e)||e.nodeType||st.isWindow(e))return!1;try{if(e.constructor&&!ot.call(e,"constructor")&&!ot.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(n){return!1}var r;for(r in e);return r===t||ot.call(e,r)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||V;var r=pt.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=st.buildFragment([e],t,i),i&&st(i).remove(),st.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=st.trim(n),n&&dt.test(n.replace(gt,"@").replace(mt,"]").replace(ht,"")))?Function("return "+n)():(st.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||st.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&st.trim(t)&&(e.execScript||function(t){e.eval.call(e,t)})(t)},camelCase:function(e){return e.replace(yt,"ms-").replace(vt,bt)},nodeName:function(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()},each:function(e,t,r){var i,o=0,a=e.length,s=n(e);if(r){if(s)for(;a>o&&(i=t.apply(e[o],r),i!==!1);o++);else for(o in e)if(i=t.apply(e[o],r),i===!1)break}else if(s)for(;a>o&&(i=t.call(e[o],o,e[o]),i!==!1);o++);else for(o in e)if(i=t.call(e[o],o,e[o]),i===!1)break;return e},trim:at&&!at.call("\ufeff\u00a0")?function(e){return null==e?"":at.call(e)}:function(e){return null==e?"":(e+"").replace(ct,"")},makeArray:function(e,t){var r=t||[];return null!=e&&(n(Object(e))?st.merge(r,"string"==typeof e?[e]:e):tt.call(r,e)),r},inArray:function(e,t,n){var r;if(t){if(rt)return rt.call(t,e,n);for(r=t.length,n=n?0>n?Math.max(0,r+n):n:0;r>n;n++)if(n in t&&t[n]===e)return n}return-1},merge:function(e,n){var r=n.length,i=e.length,o=0;if("number"==typeof r)for(;r>o;o++)e[i++]=n[o];else for(;n[o]!==t;)e[i++]=n[o++];return e.length=i,e},grep:function(e,t,n){var r,i=[],o=0,a=e.length;for(n=!!n;a>o;o++)r=!!t(e[o],o),n!==r&&i.push(e[o]);return i},map:function(e,t,r){var i,o=0,a=e.length,s=n(e),u=[];if(s)for(;a>o;o++)i=t(e[o],o,r),null!=i&&(u[u.length]=i);else for(o in e)i=t(e[o],o,r),null!=i&&(u[u.length]=i);return et.apply([],u)},guid:1,proxy:function(e,n){var r,i,o;return"string"==typeof n&&(r=e[n],n=e,e=r),st.isFunction(e)?(i=nt.call(arguments,2),o=function(){return e.apply(n||this,i.concat(nt.call(arguments)))},o.guid=e.guid=e.guid||st.guid++,o):t},access:function(e,n,r,i,o,a,s){var u=0,l=e.length,c=null==r;if("object"===st.type(r)){o=!0;for(u in r)st.access(e,n,u,r[u],!0,a,s)}else if(i!==t&&(o=!0,st.isFunction(i)||(s=!0),c&&(s?(n.call(e,i),n=null):(c=n,n=function(e,t,n){return c.call(st(e),n)})),n))for(;l>u;u++)n(e[u],r,s?i:i.call(e[u],u,n(e[u],r)));return o?e:c?n.call(e):l?n(e[0],r):a},now:function(){return(new Date).getTime()}}),st.ready.promise=function(t){if(!U)if(U=st.Deferred(),"complete"===V.readyState)setTimeout(st.ready);else if(V.addEventListener)V.addEventListener("DOMContentLoaded",xt,!1),e.addEventListener("load",st.ready,!1);else{V.attachEvent("onreadystatechange",xt),e.attachEvent("onload",st.ready);var n=!1;try{n=null==e.frameElement&&V.documentElement}catch(r){}n&&n.doScroll&&function i(){if(!st.isReady){try{n.doScroll("left")}catch(e){return setTimeout(i,50)}st.ready()}}()}return U.promise(t)},st.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(e,t){Q["[object "+t+"]"]=t.toLowerCase()}),X=st(V);var Tt={};st.Callbacks=function(e){e="string"==typeof e?Tt[e]||r(e):st.extend({},e);var n,i,o,a,s,u,l=[],c=!e.once&&[],f=function(t){for(n=e.memory&&t,i=!0,u=a||0,a=0,s=l.length,o=!0;l&&s>u;u++)if(l[u].apply(t[0],t[1])===!1&&e.stopOnFalse){n=!1;break}o=!1,l&&(c?c.length&&f(c.shift()):n?l=[]:p.disable())},p={add:function(){if(l){var t=l.length;(function r(t){st.each(t,function(t,n){var i=st.type(n);"function"===i?e.unique&&p.has(n)||l.push(n):n&&n.length&&"string"!==i&&r(n)})})(arguments),o?s=l.length:n&&(a=t,f(n))}return this},remove:function(){return l&&st.each(arguments,function(e,t){for(var n;(n=st.inArray(t,l,n))>-1;)l.splice(n,1),o&&(s>=n&&s--,u>=n&&u--)}),this},has:function(e){return st.inArray(e,l)>-1},empty:function(){return l=[],this},disable:function(){return l=c=n=t,this},disabled:function(){return!l},lock:function(){return c=t,n||p.disable(),this},locked:function(){return!c},fireWith:function(e,t){return t=t||[],t=[e,t.slice?t.slice():t],!l||i&&!c||(o?c.push(t):f(t)),this},fire:function(){return p.fireWith(this,arguments),this},fired:function(){return!!i}};return p},st.extend({Deferred:function(e){var t=[["resolve","done",st.Callbacks("once memory"),"resolved"],["reject","fail",st.Callbacks("once memory"),"rejected"],["notify","progress",st.Callbacks("memory")]],n="pending",r={state:function(){return n},always:function(){return i.done(arguments).fail(arguments),this},then:function(){var e=arguments;return st.Deferred(function(n){st.each(t,function(t,o){var a=o[0],s=st.isFunction(e[t])&&e[t];i[o[1]](function(){var e=s&&s.apply(this,arguments);e&&st.isFunction(e.promise)?e.promise().done(n.resolve).fail(n.reject).progress(n.notify):n[a+"With"](this===r?n.promise():this,s?[e]:arguments)})}),e=null}).promise()},promise:function(e){return null!=e?st.extend(e,r):r}},i={};return r.pipe=r.then,st.each(t,function(e,o){var a=o[2],s=o[3];r[o[1]]=a.add,s&&a.add(function(){n=s},t[1^e][2].disable,t[2][2].lock),i[o[0]]=function(){return i[o[0]+"With"](this===i?r:this,arguments),this},i[o[0]+"With"]=a.fireWith}),r.promise(i),e&&e.call(i,i),i},when:function(e){var t,n,r,i=0,o=nt.call(arguments),a=o.length,s=1!==a||e&&st.isFunction(e.promise)?a:0,u=1===s?e:st.Deferred(),l=function(e,n,r){return function(i){n[e]=this,r[e]=arguments.length>1?nt.call(arguments):i,r===t?u.notifyWith(n,r):--s||u.resolveWith(n,r)}};if(a>1)for(t=Array(a),n=Array(a),r=Array(a);a>i;i++)o[i]&&st.isFunction(o[i].promise)?o[i].promise().done(l(i,r,o)).fail(u.reject).progress(l(i,n,t)):--s;return s||u.resolveWith(r,o),u.promise()}}),st.support=function(){var n,r,i,o,a,s,u,l,c,f,p=V.createElement("div");if(p.setAttribute("className","t"),p.innerHTML=" a ",r=p.getElementsByTagName("*"),i=p.getElementsByTagName("a")[0],!r||!i||!r.length)return{};o=V.createElement("select"),a=o.appendChild(V.createElement("option")),s=p.getElementsByTagName("input")[0],i.style.cssText="top:1px;float:left;opacity:.5",n={getSetAttribute:"t"!==p.className,leadingWhitespace:3===p.firstChild.nodeType,tbody:!p.getElementsByTagName("tbody").length,htmlSerialize:!!p.getElementsByTagName("link").length,style:/top/.test(i.getAttribute("style")),hrefNormalized:"/a"===i.getAttribute("href"),opacity:/^0.5/.test(i.style.opacity),cssFloat:!!i.style.cssFloat,checkOn:!!s.value,optSelected:a.selected,enctype:!!V.createElement("form").enctype,html5Clone:"<:nav>"!==V.createElement("nav").cloneNode(!0).outerHTML,boxModel:"CSS1Compat"===V.compatMode,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},s.checked=!0,n.noCloneChecked=s.cloneNode(!0).checked,o.disabled=!0,n.optDisabled=!a.disabled;try{delete p.test}catch(d){n.deleteExpando=!1}s=V.createElement("input"),s.setAttribute("value",""),n.input=""===s.getAttribute("value"),s.value="t",s.setAttribute("type","radio"),n.radioValue="t"===s.value,s.setAttribute("checked","t"),s.setAttribute("name","t"),u=V.createDocumentFragment(),u.appendChild(s),n.appendChecked=s.checked,n.checkClone=u.cloneNode(!0).cloneNode(!0).lastChild.checked,p.attachEvent&&(p.attachEvent("onclick",function(){n.noCloneEvent=!1}),p.cloneNode(!0).click());for(f in{submit:!0,change:!0,focusin:!0})p.setAttribute(l="on"+f,"t"),n[f+"Bubbles"]=l in e||p.attributes[l].expando===!1;return p.style.backgroundClip="content-box",p.cloneNode(!0).style.backgroundClip="",n.clearCloneStyle="content-box"===p.style.backgroundClip,st(function(){var r,i,o,a="padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",s=V.getElementsByTagName("body")[0];s&&(r=V.createElement("div"),r.style.cssText="border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px",s.appendChild(r).appendChild(p),p.innerHTML="",o=p.getElementsByTagName("td"),o[0].style.cssText="padding:0;margin:0;border:0;display:none",c=0===o[0].offsetHeight,o[0].style.display="",o[1].style.display="none",n.reliableHiddenOffsets=c&&0===o[0].offsetHeight,p.innerHTML="",p.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",n.boxSizing=4===p.offsetWidth,n.doesNotIncludeMarginInBodyOffset=1!==s.offsetTop,e.getComputedStyle&&(n.pixelPosition="1%"!==(e.getComputedStyle(p,null)||{}).top,n.boxSizingReliable="4px"===(e.getComputedStyle(p,null)||{width:"4px"}).width,i=p.appendChild(V.createElement("div")),i.style.cssText=p.style.cssText=a,i.style.marginRight=i.style.width="0",p.style.width="1px",n.reliableMarginRight=!parseFloat((e.getComputedStyle(i,null)||{}).marginRight)),p.style.zoom!==t&&(p.innerHTML="",p.style.cssText=a+"width:1px;padding:1px;display:inline;zoom:1",n.inlineBlockNeedsLayout=3===p.offsetWidth,p.style.display="block",p.innerHTML="
",p.firstChild.style.width="5px",n.shrinkWrapBlocks=3!==p.offsetWidth,s.style.zoom=1),s.removeChild(r),r=p=o=i=null)}),r=o=u=a=i=s=null,n}();var wt=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,Nt=/([A-Z])/g;st.extend({cache:{},expando:"jQuery"+(Z+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(e){return e=e.nodeType?st.cache[e[st.expando]]:e[st.expando],!!e&&!s(e)},data:function(e,t,n){return i(e,t,n,!1)},removeData:function(e,t){return o(e,t,!1)},_data:function(e,t,n){return i(e,t,n,!0)},_removeData:function(e,t){return o(e,t,!0)},acceptData:function(e){var t=e.nodeName&&st.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),st.fn.extend({data:function(e,n){var r,i,o=this[0],s=0,u=null;if(e===t){if(this.length&&(u=st.data(o),1===o.nodeType&&!st._data(o,"parsedAttrs"))){for(r=o.attributes;r.length>s;s++)i=r[s].name,i.indexOf("data-")||(i=st.camelCase(i.substring(5)),a(o,i,u[i]));st._data(o,"parsedAttrs",!0)}return u}return"object"==typeof e?this.each(function(){st.data(this,e)}):st.access(this,function(n){return n===t?o?a(o,e,st.data(o,e)):null:(this.each(function(){st.data(this,e,n)}),t)},null,n,arguments.length>1,null,!0)},removeData:function(e){return this.each(function(){st.removeData(this,e)})}}),st.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=st._data(e,n),r&&(!i||st.isArray(r)?i=st._data(e,n,st.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=st.queue(e,t),r=n.length,i=n.shift(),o=st._queueHooks(e,t),a=function(){st.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),o.cur=i,i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return st._data(e,n)||st._data(e,n,{empty:st.Callbacks("once memory").add(function(){st._removeData(e,t+"queue"),st._removeData(e,n)})})}}),st.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?st.queue(this[0],e):n===t?this:this.each(function(){var t=st.queue(this,e,n);st._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&st.dequeue(this,e)})},dequeue:function(e){return this.each(function(){st.dequeue(this,e)})},delay:function(e,t){return e=st.fx?st.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=st.Deferred(),a=this,s=this.length,u=function(){--i||o.resolveWith(a,[a])};for("string"!=typeof e&&(n=e,e=t),e=e||"fx";s--;)r=st._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(u));return u(),o.promise(n)}});var Ct,kt,Et=/[\t\r\n]/g,St=/\r/g,At=/^(?:input|select|textarea|button|object)$/i,jt=/^(?:a|area)$/i,Dt=/^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,Lt=/^(?:checked|selected)$/i,Ht=st.support.getSetAttribute,Mt=st.support.input;st.fn.extend({attr:function(e,t){return st.access(this,st.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){st.removeAttr(this,e)})},prop:function(e,t){return st.access(this,st.prop,e,t,arguments.length>1)},removeProp:function(e){return e=st.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,u="string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).addClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(lt)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(Et," "):" ")){for(o=0;i=t[o++];)0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=st.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,u=0===arguments.length||"string"==typeof e&&e;if(st.isFunction(e))return this.each(function(t){st(this).removeClass(e.call(this,t,this.className))});if(u)for(t=(e||"").match(lt)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(Et," "):"")){for(o=0;i=t[o++];)for(;r.indexOf(" "+i+" ")>=0;)r=r.replace(" "+i+" "," ");n.className=e?st.trim(r):""}return this},toggleClass:function(e,t){var n=typeof e,r="boolean"==typeof t;return st.isFunction(e)?this.each(function(n){st(this).toggleClass(e.call(this,n,this.className,t),t)}):this.each(function(){if("string"===n)for(var i,o=0,a=st(this),s=t,u=e.match(lt)||[];i=u[o++];)s=r?s:!a.hasClass(i),a[s?"addClass":"removeClass"](i);else("undefined"===n||"boolean"===n)&&(this.className&&st._data(this,"__className__",this.className),this.className=this.className||e===!1?"":st._data(this,"__className__")||"")})},hasClass:function(e){for(var t=" "+e+" ",n=0,r=this.length;r>n;n++)if(1===this[n].nodeType&&(" "+this[n].className+" ").replace(Et," ").indexOf(t)>=0)return!0;return!1},val:function(e){var n,r,i,o=this[0];{if(arguments.length)return i=st.isFunction(e),this.each(function(r){var o,a=st(this);1===this.nodeType&&(o=i?e.call(this,r,a.val()):e,null==o?o="":"number"==typeof o?o+="":st.isArray(o)&&(o=st.map(o,function(e){return null==e?"":e+""})),n=st.valHooks[this.type]||st.valHooks[this.nodeName.toLowerCase()],n&&"set"in n&&n.set(this,o,"value")!==t||(this.value=o))});if(o)return n=st.valHooks[o.type]||st.valHooks[o.nodeName.toLowerCase()],n&&"get"in n&&(r=n.get(o,"value"))!==t?r:(r=o.value,"string"==typeof r?r.replace(St,""):null==r?"":r)}}}),st.extend({valHooks:{option:{get:function(e){var t=e.attributes.value;return!t||t.specified?e.value:e.text}},select:{get:function(e){for(var t,n,r=e.options,i=e.selectedIndex,o="select-one"===e.type||0>i,a=o?null:[],s=o?i+1:r.length,u=0>i?s:o?i:0;s>u;u++)if(n=r[u],!(!n.selected&&u!==i||(st.support.optDisabled?n.disabled:null!==n.getAttribute("disabled"))||n.parentNode.disabled&&st.nodeName(n.parentNode,"optgroup"))){if(t=st(n).val(),o)return t;a.push(t)}return a},set:function(e,t){var n=st.makeArray(t);return st(e).find("option").each(function(){this.selected=st.inArray(st(this).val(),n)>=0}),n.length||(e.selectedIndex=-1),n}}},attr:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return e.getAttribute===t?st.prop(e,n,r):(a=1!==s||!st.isXMLDoc(e),a&&(n=n.toLowerCase(),o=st.attrHooks[n]||(Dt.test(n)?kt:Ct)),r===t?o&&a&&"get"in o&&null!==(i=o.get(e,n))?i:(e.getAttribute!==t&&(i=e.getAttribute(n)),null==i?t:i):null!==r?o&&a&&"set"in o&&(i=o.set(e,r,n))!==t?i:(e.setAttribute(n,r+""),r):(st.removeAttr(e,n),t))},removeAttr:function(e,t){var n,r,i=0,o=t&&t.match(lt);if(o&&1===e.nodeType)for(;n=o[i++];)r=st.propFix[n]||n,Dt.test(n)?!Ht&&Lt.test(n)?e[st.camelCase("default-"+n)]=e[r]=!1:e[r]=!1:st.attr(e,n,""),e.removeAttribute(Ht?n:r)},attrHooks:{type:{set:function(e,t){if(!st.support.radioValue&&"radio"===t&&st.nodeName(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(e,n,r){var i,o,a,s=e.nodeType;if(e&&3!==s&&8!==s&&2!==s)return a=1!==s||!st.isXMLDoc(e),a&&(n=st.propFix[n]||n,o=st.propHooks[n]),r!==t?o&&"set"in o&&(i=o.set(e,r,n))!==t?i:e[n]=r:o&&"get"in o&&null!==(i=o.get(e,n))?i:e[n]},propHooks:{tabIndex:{get:function(e){var n=e.getAttributeNode("tabindex");return n&&n.specified?parseInt(n.value,10):At.test(e.nodeName)||jt.test(e.nodeName)&&e.href?0:t}}}}),kt={get:function(e,n){var r=st.prop(e,n),i="boolean"==typeof r&&e.getAttribute(n),o="boolean"==typeof r?Mt&&Ht?null!=i:Lt.test(n)?e[st.camelCase("default-"+n)]:!!i:e.getAttributeNode(n);return o&&o.value!==!1?n.toLowerCase():t},set:function(e,t,n){return t===!1?st.removeAttr(e,n):Mt&&Ht||!Lt.test(n)?e.setAttribute(!Ht&&st.propFix[n]||n,n):e[st.camelCase("default-"+n)]=e[n]=!0,n}},Mt&&Ht||(st.attrHooks.value={get:function(e,n){var r=e.getAttributeNode(n);return st.nodeName(e,"input")?e.defaultValue:r&&r.specified?r.value:t
+},set:function(e,n,r){return st.nodeName(e,"input")?(e.defaultValue=n,t):Ct&&Ct.set(e,n,r)}}),Ht||(Ct=st.valHooks.button={get:function(e,n){var r=e.getAttributeNode(n);return r&&("id"===n||"name"===n||"coords"===n?""!==r.value:r.specified)?r.value:t},set:function(e,n,r){var i=e.getAttributeNode(r);return i||e.setAttributeNode(i=e.ownerDocument.createAttribute(r)),i.value=n+="","value"===r||n===e.getAttribute(r)?n:t}},st.attrHooks.contenteditable={get:Ct.get,set:function(e,t,n){Ct.set(e,""===t?!1:t,n)}},st.each(["width","height"],function(e,n){st.attrHooks[n]=st.extend(st.attrHooks[n],{set:function(e,r){return""===r?(e.setAttribute(n,"auto"),r):t}})})),st.support.hrefNormalized||(st.each(["href","src","width","height"],function(e,n){st.attrHooks[n]=st.extend(st.attrHooks[n],{get:function(e){var r=e.getAttribute(n,2);return null==r?t:r}})}),st.each(["href","src"],function(e,t){st.propHooks[t]={get:function(e){return e.getAttribute(t,4)}}})),st.support.style||(st.attrHooks.style={get:function(e){return e.style.cssText||t},set:function(e,t){return e.style.cssText=t+""}}),st.support.optSelected||(st.propHooks.selected=st.extend(st.propHooks.selected,{get:function(e){var t=e.parentNode;return t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex),null}})),st.support.enctype||(st.propFix.enctype="encoding"),st.support.checkOn||st.each(["radio","checkbox"],function(){st.valHooks[this]={get:function(e){return null===e.getAttribute("value")?"on":e.value}}}),st.each(["radio","checkbox"],function(){st.valHooks[this]=st.extend(st.valHooks[this],{set:function(e,n){return st.isArray(n)?e.checked=st.inArray(st(e).val(),n)>=0:t}})});var qt=/^(?:input|select|textarea)$/i,_t=/^key/,Ft=/^(?:mouse|contextmenu)|click/,Ot=/^(?:focusinfocus|focusoutblur)$/,Bt=/^([^.]*)(?:\.(.+)|)$/;st.event={global:{},add:function(e,n,r,i,o){var a,s,u,l,c,f,p,d,h,g,m,y=3!==e.nodeType&&8!==e.nodeType&&st._data(e);if(y){for(r.handler&&(a=r,r=a.handler,o=a.selector),r.guid||(r.guid=st.guid++),(l=y.events)||(l=y.events={}),(s=y.handle)||(s=y.handle=function(e){return st===t||e&&st.event.triggered===e.type?t:st.event.dispatch.apply(s.elem,arguments)},s.elem=e),n=(n||"").match(lt)||[""],c=n.length;c--;)u=Bt.exec(n[c])||[],h=m=u[1],g=(u[2]||"").split(".").sort(),p=st.event.special[h]||{},h=(o?p.delegateType:p.bindType)||h,p=st.event.special[h]||{},f=st.extend({type:h,origType:m,data:i,handler:r,guid:r.guid,selector:o,needsContext:o&&st.expr.match.needsContext.test(o),namespace:g.join(".")},a),(d=l[h])||(d=l[h]=[],d.delegateCount=0,p.setup&&p.setup.call(e,i,g,s)!==!1||(e.addEventListener?e.addEventListener(h,s,!1):e.attachEvent&&e.attachEvent("on"+h,s))),p.add&&(p.add.call(e,f),f.handler.guid||(f.handler.guid=r.guid)),o?d.splice(d.delegateCount++,0,f):d.push(f),st.event.global[h]=!0;e=null}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,m=st.hasData(e)&&st._data(e);if(m&&(u=m.events)){for(t=(t||"").match(lt)||[""],l=t.length;l--;)if(s=Bt.exec(t[l])||[],d=g=s[1],h=(s[2]||"").split(".").sort(),d){for(f=st.event.special[d]||{},d=(r?f.delegateType:f.bindType)||d,p=u[d]||[],s=s[2]&&RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&f.teardown.call(e,h,m.handle)!==!1||st.removeEvent(e,d,m.handle),delete u[d])}else for(d in u)st.event.remove(e,d+t[l],n,r,!0);st.isEmptyObject(u)&&(delete m.handle,st._removeData(e,"events"))}},trigger:function(n,r,i,o){var a,s,u,l,c,f,p,d=[i||V],h=n.type||n,g=n.namespace?n.namespace.split("."):[];if(s=u=i=i||V,3!==i.nodeType&&8!==i.nodeType&&!Ot.test(h+st.event.triggered)&&(h.indexOf(".")>=0&&(g=h.split("."),h=g.shift(),g.sort()),c=0>h.indexOf(":")&&"on"+h,n=n[st.expando]?n:new st.Event(h,"object"==typeof n&&n),n.isTrigger=!0,n.namespace=g.join("."),n.namespace_re=n.namespace?RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,n.result=t,n.target||(n.target=i),r=null==r?[n]:st.makeArray(r,[n]),p=st.event.special[h]||{},o||!p.trigger||p.trigger.apply(i,r)!==!1)){if(!o&&!p.noBubble&&!st.isWindow(i)){for(l=p.delegateType||h,Ot.test(l+h)||(s=s.parentNode);s;s=s.parentNode)d.push(s),u=s;u===(i.ownerDocument||V)&&d.push(u.defaultView||u.parentWindow||e)}for(a=0;(s=d[a++])&&!n.isPropagationStopped();)n.type=a>1?l:p.bindType||h,f=(st._data(s,"events")||{})[n.type]&&st._data(s,"handle"),f&&f.apply(s,r),f=c&&s[c],f&&st.acceptData(s)&&f.apply&&f.apply(s,r)===!1&&n.preventDefault();if(n.type=h,!(o||n.isDefaultPrevented()||p._default&&p._default.apply(i.ownerDocument,r)!==!1||"click"===h&&st.nodeName(i,"a")||!st.acceptData(i)||!c||!i[h]||st.isWindow(i))){u=i[c],u&&(i[c]=null),st.event.triggered=h;try{i[h]()}catch(m){}st.event.triggered=t,u&&(i[c]=u)}return n.result}},dispatch:function(e){e=st.event.fix(e);var n,r,i,o,a,s=[],u=nt.call(arguments),l=(st._data(this,"events")||{})[e.type]||[],c=st.event.special[e.type]||{};if(u[0]=e,e.delegateTarget=this,!c.preDispatch||c.preDispatch.call(this,e)!==!1){for(s=st.event.handlers.call(this,e,l),n=0;(o=s[n++])&&!e.isPropagationStopped();)for(e.currentTarget=o.elem,r=0;(a=o.handlers[r++])&&!e.isImmediatePropagationStopped();)(!e.namespace_re||e.namespace_re.test(a.namespace))&&(e.handleObj=a,e.data=a.data,i=((st.event.special[a.origType]||{}).handle||a.handler).apply(o.elem,u),i!==t&&(e.result=i)===!1&&(e.preventDefault(),e.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,e),e.result}},handlers:function(e,n){var r,i,o,a,s=[],u=n.delegateCount,l=e.target;if(u&&l.nodeType&&(!e.button||"click"!==e.type))for(;l!=this;l=l.parentNode||this)if(l.disabled!==!0||"click"!==e.type){for(i=[],r=0;u>r;r++)a=n[r],o=a.selector+" ",i[o]===t&&(i[o]=a.needsContext?st(o,this).index(l)>=0:st.find(o,this,null,[l]).length),i[o]&&i.push(a);i.length&&s.push({elem:l,handlers:i})}return n.length>u&&s.push({elem:this,handlers:n.slice(u)}),s},fix:function(e){if(e[st.expando])return e;var t,n,r=e,i=st.event.fixHooks[e.type]||{},o=i.props?this.props.concat(i.props):this.props;for(e=new st.Event(r),t=o.length;t--;)n=o[t],e[n]=r[n];return e.target||(e.target=r.srcElement||V),3===e.target.nodeType&&(e.target=e.target.parentNode),e.metaKey=!!e.metaKey,i.filter?i.filter(e,r):e},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(e,t){return null==e.which&&(e.which=null!=t.charCode?t.charCode:t.keyCode),e}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(e,n){var r,i,o,a=n.button,s=n.fromElement;return null==e.pageX&&null!=n.clientX&&(r=e.target.ownerDocument||V,i=r.documentElement,o=r.body,e.pageX=n.clientX+(i&&i.scrollLeft||o&&o.scrollLeft||0)-(i&&i.clientLeft||o&&o.clientLeft||0),e.pageY=n.clientY+(i&&i.scrollTop||o&&o.scrollTop||0)-(i&&i.clientTop||o&&o.clientTop||0)),!e.relatedTarget&&s&&(e.relatedTarget=s===e.target?n.toElement:s),e.which||a===t||(e.which=1&a?1:2&a?3:4&a?2:0),e}},special:{load:{noBubble:!0},click:{trigger:function(){return st.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):t}},focus:{trigger:function(){if(this!==V.activeElement&&this.focus)try{return this.focus(),!1}catch(e){}},delegateType:"focusin"},blur:{trigger:function(){return this===V.activeElement&&this.blur?(this.blur(),!1):t},delegateType:"focusout"},beforeunload:{postDispatch:function(e){e.result!==t&&(e.originalEvent.returnValue=e.result)}}},simulate:function(e,t,n,r){var i=st.extend(new st.Event,n,{type:e,isSimulated:!0,originalEvent:{}});r?st.event.trigger(i,null,t):st.event.dispatch.call(t,i),i.isDefaultPrevented()&&n.preventDefault()}},st.removeEvent=V.removeEventListener?function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n,!1)}:function(e,n,r){var i="on"+n;e.detachEvent&&(e[i]===t&&(e[i]=null),e.detachEvent(i,r))},st.Event=function(e,n){return this instanceof st.Event?(e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||e.returnValue===!1||e.getPreventDefault&&e.getPreventDefault()?u:l):this.type=e,n&&st.extend(this,n),this.timeStamp=e&&e.timeStamp||st.now(),this[st.expando]=!0,t):new st.Event(e,n)},st.Event.prototype={isDefaultPrevented:l,isPropagationStopped:l,isImmediatePropagationStopped:l,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=u,e&&(e.preventDefault?e.preventDefault():e.returnValue=!1)},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=u,e&&(e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u,this.stopPropagation()}},st.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(e,t){st.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return(!i||i!==r&&!st.contains(r,i))&&(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}}),st.support.submitBubbles||(st.event.special.submit={setup:function(){return st.nodeName(this,"form")?!1:(st.event.add(this,"click._submit keypress._submit",function(e){var n=e.target,r=st.nodeName(n,"input")||st.nodeName(n,"button")?n.form:t;r&&!st._data(r,"submitBubbles")&&(st.event.add(r,"submit._submit",function(e){e._submit_bubble=!0}),st._data(r,"submitBubbles",!0))}),t)},postDispatch:function(e){e._submit_bubble&&(delete e._submit_bubble,this.parentNode&&!e.isTrigger&&st.event.simulate("submit",this.parentNode,e,!0))},teardown:function(){return st.nodeName(this,"form")?!1:(st.event.remove(this,"._submit"),t)}}),st.support.changeBubbles||(st.event.special.change={setup:function(){return qt.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(st.event.add(this,"propertychange._change",function(e){"checked"===e.originalEvent.propertyName&&(this._just_changed=!0)}),st.event.add(this,"click._change",function(e){this._just_changed&&!e.isTrigger&&(this._just_changed=!1),st.event.simulate("change",this,e,!0)})),!1):(st.event.add(this,"beforeactivate._change",function(e){var t=e.target;qt.test(t.nodeName)&&!st._data(t,"changeBubbles")&&(st.event.add(t,"change._change",function(e){!this.parentNode||e.isSimulated||e.isTrigger||st.event.simulate("change",this.parentNode,e,!0)}),st._data(t,"changeBubbles",!0))}),t)},handle:function(e){var n=e.target;return this!==n||e.isSimulated||e.isTrigger||"radio"!==n.type&&"checkbox"!==n.type?e.handleObj.handler.apply(this,arguments):t},teardown:function(){return st.event.remove(this,"._change"),!qt.test(this.nodeName)}}),st.support.focusinBubbles||st.each({focus:"focusin",blur:"focusout"},function(e,t){var n=0,r=function(e){st.event.simulate(t,e.target,st.event.fix(e),!0)};st.event.special[t]={setup:function(){0===n++&&V.addEventListener(e,r,!0)},teardown:function(){0===--n&&V.removeEventListener(e,r,!0)}}}),st.fn.extend({on:function(e,n,r,i,o){var a,s;if("object"==typeof e){"string"!=typeof n&&(r=r||n,n=t);for(s in e)this.on(s,n,r,e[s],o);return this}if(null==r&&null==i?(i=n,r=n=t):null==i&&("string"==typeof n?(i=r,r=t):(i=r,r=n,n=t)),i===!1)i=l;else if(!i)return this;return 1===o&&(a=i,i=function(e){return st().off(e),a.apply(this,arguments)},i.guid=a.guid||(a.guid=st.guid++)),this.each(function(){st.event.add(this,e,i,r,n)})},one:function(e,t,n,r){return this.on(e,t,n,r,1)},off:function(e,n,r){var i,o;if(e&&e.preventDefault&&e.handleObj)return i=e.handleObj,st(e.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof e){for(o in e)this.off(o,n,e[o]);return this}return(n===!1||"function"==typeof n)&&(r=n,n=t),r===!1&&(r=l),this.each(function(){st.event.remove(this,e,r,n)})},bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},trigger:function(e,t){return this.each(function(){st.event.trigger(e,t,this)})},triggerHandler:function(e,n){var r=this[0];return r?st.event.trigger(e,n,r,!0):t},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),st.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(e,t){st.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)},_t.test(t)&&(st.event.fixHooks[t]=st.event.keyHooks),Ft.test(t)&&(st.event.fixHooks[t]=st.event.mouseHooks)}),function(e,t){function n(e){return ht.test(e+"")}function r(){var e,t=[];return e=function(n,r){return t.push(n+=" ")>C.cacheLength&&delete e[t.shift()],e[n]=r}}function i(e){return e[P]=!0,e}function o(e){var t=L.createElement("div");try{return e(t)}catch(n){return!1}finally{t=null}}function a(e,t,n,r){var i,o,a,s,u,l,c,d,h,g;if((t?t.ownerDocument||t:R)!==L&&D(t),t=t||L,n=n||[],!e||"string"!=typeof e)return n;if(1!==(s=t.nodeType)&&9!==s)return[];if(!M&&!r){if(i=gt.exec(e))if(a=i[1]){if(9===s){if(o=t.getElementById(a),!o||!o.parentNode)return n;if(o.id===a)return n.push(o),n}else if(t.ownerDocument&&(o=t.ownerDocument.getElementById(a))&&O(t,o)&&o.id===a)return n.push(o),n}else{if(i[2])return Q.apply(n,K.call(t.getElementsByTagName(e),0)),n;if((a=i[3])&&W.getByClassName&&t.getElementsByClassName)return Q.apply(n,K.call(t.getElementsByClassName(a),0)),n}if(W.qsa&&!q.test(e)){if(c=!0,d=P,h=t,g=9===s&&e,1===s&&"object"!==t.nodeName.toLowerCase()){for(l=f(e),(c=t.getAttribute("id"))?d=c.replace(vt,"\\$&"):t.setAttribute("id",d),d="[id='"+d+"'] ",u=l.length;u--;)l[u]=d+p(l[u]);h=dt.test(e)&&t.parentNode||t,g=l.join(",")}if(g)try{return Q.apply(n,K.call(h.querySelectorAll(g),0)),n}catch(m){}finally{c||t.removeAttribute("id")}}}return x(e.replace(at,"$1"),t,n,r)}function s(e,t){for(var n=e&&t&&e.nextSibling;n;n=n.nextSibling)if(n===t)return-1;return e?1:-1}function u(e){return function(t){var n=t.nodeName.toLowerCase();return"input"===n&&t.type===e}}function l(e){return function(t){var n=t.nodeName.toLowerCase();return("input"===n||"button"===n)&&t.type===e}}function c(e){return i(function(t){return t=+t,i(function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function f(e,t){var n,r,i,o,s,u,l,c=X[e+" "];if(c)return t?0:c.slice(0);for(s=e,u=[],l=C.preFilter;s;){(!n||(r=ut.exec(s)))&&(r&&(s=s.slice(r[0].length)||s),u.push(i=[])),n=!1,(r=lt.exec(s))&&(n=r.shift(),i.push({value:n,type:r[0].replace(at," ")}),s=s.slice(n.length));for(o in C.filter)!(r=pt[o].exec(s))||l[o]&&!(r=l[o](r))||(n=r.shift(),i.push({value:n,type:o,matches:r}),s=s.slice(n.length));if(!n)break}return t?s.length:s?a.error(e):X(e,u).slice(0)}function p(e){for(var t=0,n=e.length,r="";n>t;t++)r+=e[t].value;return r}function d(e,t,n){var r=t.dir,i=n&&"parentNode"===t.dir,o=I++;return t.first?function(t,n,o){for(;t=t[r];)if(1===t.nodeType||i)return e(t,n,o)}:function(t,n,a){var s,u,l,c=$+" "+o;if(a){for(;t=t[r];)if((1===t.nodeType||i)&&e(t,n,a))return!0}else for(;t=t[r];)if(1===t.nodeType||i)if(l=t[P]||(t[P]={}),(u=l[r])&&u[0]===c){if((s=u[1])===!0||s===N)return s===!0}else if(u=l[r]=[c],u[1]=e(t,n,a)||N,u[1]===!0)return!0}}function h(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function g(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;u>s;s++)(o=e[s])&&(!n||n(o,r,i))&&(a.push(o),l&&t.push(s));return a}function m(e,t,n,r,o,a){return r&&!r[P]&&(r=m(r)),o&&!o[P]&&(o=m(o,a)),i(function(i,a,s,u){var l,c,f,p=[],d=[],h=a.length,m=i||b(t||"*",s.nodeType?[s]:s,[]),y=!e||!i&&t?m:g(m,p,e,s,u),v=n?o||(i?e:h||r)?[]:a:y;if(n&&n(y,v,s,u),r)for(l=g(v,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(v[d[c]]=!(y[d[c]]=f));if(i){if(o||e){if(o){for(l=[],c=v.length;c--;)(f=v[c])&&l.push(y[c]=f);o(null,v=[],l,u)}for(c=v.length;c--;)(f=v[c])&&(l=o?Z.call(i,f):p[c])>-1&&(i[l]=!(a[l]=f))}}else v=g(v===a?v.splice(h,v.length):v),o?o(null,a,v,u):Q.apply(a,v)})}function y(e){for(var t,n,r,i=e.length,o=C.relative[e[0].type],a=o||C.relative[" "],s=o?1:0,u=d(function(e){return e===t},a,!0),l=d(function(e){return Z.call(t,e)>-1},a,!0),c=[function(e,n,r){return!o&&(r||n!==j)||((t=n).nodeType?u(e,n,r):l(e,n,r))}];i>s;s++)if(n=C.relative[e[s].type])c=[d(h(c),n)];else{if(n=C.filter[e[s].type].apply(null,e[s].matches),n[P]){for(r=++s;i>r&&!C.relative[e[r].type];r++);return m(s>1&&h(c),s>1&&p(e.slice(0,s-1)).replace(at,"$1"),n,r>s&&y(e.slice(s,r)),i>r&&y(e=e.slice(r)),i>r&&p(e))}c.push(n)}return h(c)}function v(e,t){var n=0,r=t.length>0,o=e.length>0,s=function(i,s,u,l,c){var f,p,d,h=[],m=0,y="0",v=i&&[],b=null!=c,x=j,T=i||o&&C.find.TAG("*",c&&s.parentNode||s),w=$+=null==x?1:Math.E;for(b&&(j=s!==L&&s,N=n);null!=(f=T[y]);y++){if(o&&f){for(p=0;d=e[p];p++)if(d(f,s,u)){l.push(f);break}b&&($=w,N=++n)}r&&((f=!d&&f)&&m--,i&&v.push(f))}if(m+=y,r&&y!==m){for(p=0;d=t[p];p++)d(v,h,s,u);if(i){if(m>0)for(;y--;)v[y]||h[y]||(h[y]=G.call(l));h=g(h)}Q.apply(l,h),b&&!i&&h.length>0&&m+t.length>1&&a.uniqueSort(l)}return b&&($=w,j=x),v};return r?i(s):s}function b(e,t,n){for(var r=0,i=t.length;i>r;r++)a(e,t[r],n);return n}function x(e,t,n,r){var i,o,a,s,u,l=f(e);if(!r&&1===l.length){if(o=l[0]=l[0].slice(0),o.length>2&&"ID"===(a=o[0]).type&&9===t.nodeType&&!M&&C.relative[o[1].type]){if(t=C.find.ID(a.matches[0].replace(xt,Tt),t)[0],!t)return n;e=e.slice(o.shift().value.length)}for(i=pt.needsContext.test(e)?-1:o.length-1;i>=0&&(a=o[i],!C.relative[s=a.type]);i--)if((u=C.find[s])&&(r=u(a.matches[0].replace(xt,Tt),dt.test(o[0].type)&&t.parentNode||t))){if(o.splice(i,1),e=r.length&&p(o),!e)return Q.apply(n,K.call(r,0)),n;break}}return S(e,l)(r,t,M,n,dt.test(e)),n}function T(){}var w,N,C,k,E,S,A,j,D,L,H,M,q,_,F,O,B,P="sizzle"+-new Date,R=e.document,W={},$=0,I=0,z=r(),X=r(),U=r(),V=typeof t,Y=1<<31,J=[],G=J.pop,Q=J.push,K=J.slice,Z=J.indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(this[t]===e)return t;return-1},et="[\\x20\\t\\r\\n\\f]",tt="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",nt=tt.replace("w","w#"),rt="([*^$|!~]?=)",it="\\["+et+"*("+tt+")"+et+"*(?:"+rt+et+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+nt+")|)|)"+et+"*\\]",ot=":("+tt+")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|"+it.replace(3,8)+")*)|.*)\\)|)",at=RegExp("^"+et+"+|((?:^|[^\\\\])(?:\\\\.)*)"+et+"+$","g"),ut=RegExp("^"+et+"*,"+et+"*"),lt=RegExp("^"+et+"*([\\x20\\t\\r\\n\\f>+~])"+et+"*"),ct=RegExp(ot),ft=RegExp("^"+nt+"$"),pt={ID:RegExp("^#("+tt+")"),CLASS:RegExp("^\\.("+tt+")"),NAME:RegExp("^\\[name=['\"]?("+tt+")['\"]?\\]"),TAG:RegExp("^("+tt.replace("w","w*")+")"),ATTR:RegExp("^"+it),PSEUDO:RegExp("^"+ot),CHILD:RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+et+"*(even|odd|(([+-]|)(\\d*)n|)"+et+"*(?:([+-]|)"+et+"*(\\d+)|))"+et+"*\\)|)","i"),needsContext:RegExp("^"+et+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+et+"*((?:-\\d)?\\d*)"+et+"*\\)|)(?=[^-]|$)","i")},dt=/[\x20\t\r\n\f]*[+~]/,ht=/\{\s*\[native code\]\s*\}/,gt=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,mt=/^(?:input|select|textarea|button)$/i,yt=/^h\d$/i,vt=/'|\\/g,bt=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,xt=/\\([\da-fA-F]{1,6}[\x20\t\r\n\f]?|.)/g,Tt=function(e,t){var n="0x"+t-65536;return n!==n?t:0>n?String.fromCharCode(n+65536):String.fromCharCode(55296|n>>10,56320|1023&n)};try{K.call(H.childNodes,0)[0].nodeType}catch(wt){K=function(e){for(var t,n=[];t=this[e];e++)n.push(t);return n}}E=a.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return t?"HTML"!==t.nodeName:!1},D=a.setDocument=function(e){var r=e?e.ownerDocument||e:R;return r!==L&&9===r.nodeType&&r.documentElement?(L=r,H=r.documentElement,M=E(r),W.tagNameNoComments=o(function(e){return e.appendChild(r.createComment("")),!e.getElementsByTagName("*").length}),W.attributes=o(function(e){e.innerHTML=" ";var t=typeof e.lastChild.getAttribute("multiple");return"boolean"!==t&&"string"!==t}),W.getByClassName=o(function(e){return e.innerHTML="
",e.getElementsByClassName&&e.getElementsByClassName("e").length?(e.lastChild.className="e",2===e.getElementsByClassName("e").length):!1}),W.getByName=o(function(e){e.id=P+0,e.innerHTML="
",H.insertBefore(e,H.firstChild);var t=r.getElementsByName&&r.getElementsByName(P).length===2+r.getElementsByName(P+0).length;return W.getIdNotName=!r.getElementById(P),H.removeChild(e),t}),C.attrHandle=o(function(e){return e.innerHTML=" ",e.firstChild&&typeof e.firstChild.getAttribute!==V&&"#"===e.firstChild.getAttribute("href")})?{}:{href:function(e){return e.getAttribute("href",2)},type:function(e){return e.getAttribute("type")}},W.getIdNotName?(C.find.ID=function(e,t){if(typeof t.getElementById!==V&&!M){var n=t.getElementById(e);return n&&n.parentNode?[n]:[]}},C.filter.ID=function(e){var t=e.replace(xt,Tt);return function(e){return e.getAttribute("id")===t}}):(C.find.ID=function(e,n){if(typeof n.getElementById!==V&&!M){var r=n.getElementById(e);return r?r.id===e||typeof r.getAttributeNode!==V&&r.getAttributeNode("id").value===e?[r]:t:[]}},C.filter.ID=function(e){var t=e.replace(xt,Tt);return function(e){var n=typeof e.getAttributeNode!==V&&e.getAttributeNode("id");return n&&n.value===t}}),C.find.TAG=W.tagNameNoComments?function(e,n){return typeof n.getElementsByTagName!==V?n.getElementsByTagName(e):t}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){for(;n=o[i];i++)1===n.nodeType&&r.push(n);return r}return o},C.find.NAME=W.getByName&&function(e,n){return typeof n.getElementsByName!==V?n.getElementsByName(name):t},C.find.CLASS=W.getByClassName&&function(e,n){return typeof n.getElementsByClassName===V||M?t:n.getElementsByClassName(e)},_=[],q=[":focus"],(W.qsa=n(r.querySelectorAll))&&(o(function(e){e.innerHTML=" ",e.querySelectorAll("[selected]").length||q.push("\\["+et+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),e.querySelectorAll(":checked").length||q.push(":checked")}),o(function(e){e.innerHTML=" ",e.querySelectorAll("[i^='']").length&&q.push("[*^$]="+et+"*(?:\"\"|'')"),e.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),q.push(",.*:")})),(W.matchesSelector=n(F=H.matchesSelector||H.mozMatchesSelector||H.webkitMatchesSelector||H.oMatchesSelector||H.msMatchesSelector))&&o(function(e){W.disconnectedMatch=F.call(e,"div"),F.call(e,"[s!='']:x"),_.push("!=",ot)}),q=RegExp(q.join("|")),_=RegExp(_.join("|")),O=n(H.contains)||H.compareDocumentPosition?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},B=H.compareDocumentPosition?function(e,t){var n;return e===t?(A=!0,0):(n=t.compareDocumentPosition&&e.compareDocumentPosition&&e.compareDocumentPosition(t))?1&n||e.parentNode&&11===e.parentNode.nodeType?e===r||O(R,e)?-1:t===r||O(R,t)?1:0:4&n?-1:1:e.compareDocumentPosition?-1:1}:function(e,t){var n,i=0,o=e.parentNode,a=t.parentNode,u=[e],l=[t];if(e===t)return A=!0,0;if(e.sourceIndex&&t.sourceIndex)return(~t.sourceIndex||Y)-(O(R,e)&&~e.sourceIndex||Y);if(!o||!a)return e===r?-1:t===r?1:o?-1:a?1:0;if(o===a)return s(e,t);for(n=e;n=n.parentNode;)u.unshift(n);for(n=t;n=n.parentNode;)l.unshift(n);for(;u[i]===l[i];)i++;return i?s(u[i],l[i]):u[i]===R?-1:l[i]===R?1:0},A=!1,[0,0].sort(B),W.detectDuplicates=A,L):L},a.matches=function(e,t){return a(e,null,null,t)},a.matchesSelector=function(e,t){if((e.ownerDocument||e)!==L&&D(e),t=t.replace(bt,"='$1']"),!(!W.matchesSelector||M||_&&_.test(t)||q.test(t)))try{var n=F.call(e,t);if(n||W.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(r){}return a(t,L,null,[e]).length>0},a.contains=function(e,t){return(e.ownerDocument||e)!==L&&D(e),O(e,t)},a.attr=function(e,t){var n;return(e.ownerDocument||e)!==L&&D(e),M||(t=t.toLowerCase()),(n=C.attrHandle[t])?n(e):M||W.attributes?e.getAttribute(t):((n=e.getAttributeNode(t))||e.getAttribute(t))&&e[t]===!0?t:n&&n.specified?n.value:null},a.error=function(e){throw Error("Syntax error, unrecognized expression: "+e)},a.uniqueSort=function(e){var t,n=[],r=1,i=0;if(A=!W.detectDuplicates,e.sort(B),A){for(;t=e[r];r++)t===e[r-1]&&(i=n.push(r));for(;i--;)e.splice(n[i],1)}return e},k=a.getText=function(e){var t,n="",r=0,i=e.nodeType;if(i){if(1===i||9===i||11===i){if("string"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=k(e)}else if(3===i||4===i)return e.nodeValue}else for(;t=e[r];r++)n+=k(t);return n},C=a.selectors={cacheLength:50,createPseudo:i,match:pt,find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(xt,Tt),e[3]=(e[4]||e[5]||"").replace(xt,Tt),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||a.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&a.error(e[0]),e},PSEUDO:function(e){var t,n=!e[5]&&e[2];return pt.CHILD.test(e[0])?null:(e[4]?e[2]=e[4]:n&&ct.test(n)&&(t=f(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){return"*"===e?function(){return!0}:(e=e.replace(xt,Tt).toLowerCase(),function(t){return t.nodeName&&t.nodeName.toLowerCase()===e})},CLASS:function(e){var t=z[e+" "];return t||(t=RegExp("(^|"+et+")"+e+"("+et+"|$)"))&&z(e,function(e){return t.test(e.className||typeof e.getAttribute!==V&&e.getAttribute("class")||"")})},ATTR:function(e,t,n){return function(r){var i=a.attr(r,e);return null==i?"!="===t:t?(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.substr(i.length-n.length)===n:"~="===t?(" "+i+" ").indexOf(n)>-1:"|="===t?i===n||i.substr(0,n.length+1)===n+"-":!1):!0}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?"nextSibling":"previousSibling",m=t.parentNode,y=s&&t.nodeName.toLowerCase(),v=!u&&!s;if(m){if(o){for(;g;){for(f=t;f=f[g];)if(s?f.nodeName.toLowerCase()===y:1===f.nodeType)return!1;h=g="only"===e&&!h&&"nextSibling"}return!0}if(h=[a?m.firstChild:m.lastChild],a&&v){for(c=m[P]||(m[P]={}),l=c[e]||[],d=l[0]===$&&l[1],p=l[0]===$&&l[2],f=d&&m.childNodes[d];f=++d&&f&&f[g]||(p=d=0)||h.pop();)if(1===f.nodeType&&++p&&f===t){c[e]=[$,d,p];break}}else if(v&&(l=(t[P]||(t[P]={}))[e])&&l[0]===$)p=l[1];else for(;(f=++d&&f&&f[g]||(p=d=0)||h.pop())&&((s?f.nodeName.toLowerCase()!==y:1!==f.nodeType)||!++p||(v&&((f[P]||(f[P]={}))[e]=[$,p]),f!==t)););return p-=i,p===r||0===p%r&&p/r>=0}}},PSEUDO:function(e,t){var n,r=C.pseudos[e]||C.setFilters[e.toLowerCase()]||a.error("unsupported pseudo: "+e);return r[P]?r(t):r.length>1?(n=[e,e,"",t],C.setFilters.hasOwnProperty(e.toLowerCase())?i(function(e,n){for(var i,o=r(e,t),a=o.length;a--;)i=Z.call(e,o[a]),e[i]=!(n[i]=o[a])}):function(e){return r(e,0,n)}):r}},pseudos:{not:i(function(e){var t=[],n=[],r=S(e.replace(at,"$1"));return r[P]?i(function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))}):function(e,i,o){return t[0]=e,r(t,null,o,n),!n.pop()}}),has:i(function(e){return function(t){return a(e,t).length>0}}),contains:i(function(e){return function(t){return(t.textContent||t.innerText||k(t)).indexOf(e)>-1}}),lang:i(function(e){return ft.test(e||"")||a.error("unsupported lang: "+e),e=e.replace(xt,Tt).toLowerCase(),function(t){var n;do if(n=M?t.getAttribute("xml:lang")||t.getAttribute("lang"):t.lang)return n=n.toLowerCase(),n===e||0===n.indexOf(e+"-");while((t=t.parentNode)&&1===t.nodeType);return!1}}),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===H},focus:function(e){return e===L.activeElement&&(!L.hasFocus||L.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:function(e){return e.disabled===!1},disabled:function(e){return e.disabled===!0},checked:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&!!e.checked||"option"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,e.selected===!0},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeName>"@"||3===e.nodeType||4===e.nodeType)return!1;return!0},parent:function(e){return!C.pseudos.empty(e)},header:function(e){return yt.test(e.nodeName)},input:function(e){return mt.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return"input"===t&&"button"===e.type||"button"===t},text:function(e){var t;return"input"===e.nodeName.toLowerCase()&&"text"===e.type&&(null==(t=e.getAttribute("type"))||t.toLowerCase()===e.type)},first:c(function(){return[0]}),last:c(function(e,t){return[t-1]}),eq:c(function(e,t,n){return[0>n?n+t:n]}),even:c(function(e,t){for(var n=0;t>n;n+=2)e.push(n);return e}),odd:c(function(e,t){for(var n=1;t>n;n+=2)e.push(n);return e}),lt:c(function(e,t,n){for(var r=0>n?n+t:n;--r>=0;)e.push(r);return e}),gt:c(function(e,t,n){for(var r=0>n?n+t:n;t>++r;)e.push(r);return e})}};for(w in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[w]=u(w);for(w in{submit:!0,reset:!0})C.pseudos[w]=l(w);S=a.compile=function(e,t){var n,r=[],i=[],o=U[e+" "];if(!o){for(t||(t=f(e)),n=t.length;n--;)o=y(t[n]),o[P]?r.push(o):i.push(o);o=U(e,v(i,r))}return o},C.pseudos.nth=C.pseudos.eq,C.filters=T.prototype=C.pseudos,C.setFilters=new T,D(),a.attr=st.attr,st.find=a,st.expr=a.selectors,st.expr[":"]=st.expr.pseudos,st.unique=a.uniqueSort,st.text=a.getText,st.isXMLDoc=a.isXML,st.contains=a.contains}(e);var Pt=/Until$/,Rt=/^(?:parents|prev(?:Until|All))/,Wt=/^.[^:#\[\.,]*$/,$t=st.expr.match.needsContext,It={children:!0,contents:!0,next:!0,prev:!0};st.fn.extend({find:function(e){var t,n,r;if("string"!=typeof e)return r=this,this.pushStack(st(e).filter(function(){for(t=0;r.length>t;t++)if(st.contains(r[t],this))return!0}));for(n=[],t=0;this.length>t;t++)st.find(e,this[t],n);return n=this.pushStack(st.unique(n)),n.selector=(this.selector?this.selector+" ":"")+e,n},has:function(e){var t,n=st(e,this),r=n.length;return this.filter(function(){for(t=0;r>t;t++)if(st.contains(this,n[t]))return!0})},not:function(e){return this.pushStack(f(this,e,!1))},filter:function(e){return this.pushStack(f(this,e,!0))},is:function(e){return!!e&&("string"==typeof e?$t.test(e)?st(e,this.context).index(this[0])>=0:st.filter(e,this).length>0:this.filter(e).length>0)},closest:function(e,t){for(var n,r=0,i=this.length,o=[],a=$t.test(e)||"string"!=typeof e?st(e,t||this.context):0;i>r;r++)for(n=this[r];n&&n.ownerDocument&&n!==t&&11!==n.nodeType;){if(a?a.index(n)>-1:st.find.matchesSelector(n,e)){o.push(n);break}n=n.parentNode}return this.pushStack(o.length>1?st.unique(o):o)},index:function(e){return e?"string"==typeof e?st.inArray(this[0],st(e)):st.inArray(e.jquery?e[0]:e,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){var n="string"==typeof e?st(e,t):st.makeArray(e&&e.nodeType?[e]:e),r=st.merge(this.get(),n);return this.pushStack(st.unique(r))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),st.fn.andSelf=st.fn.addBack,st.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return st.dir(e,"parentNode")},parentsUntil:function(e,t,n){return st.dir(e,"parentNode",n)},next:function(e){return c(e,"nextSibling")},prev:function(e){return c(e,"previousSibling")
+},nextAll:function(e){return st.dir(e,"nextSibling")},prevAll:function(e){return st.dir(e,"previousSibling")},nextUntil:function(e,t,n){return st.dir(e,"nextSibling",n)},prevUntil:function(e,t,n){return st.dir(e,"previousSibling",n)},siblings:function(e){return st.sibling((e.parentNode||{}).firstChild,e)},children:function(e){return st.sibling(e.firstChild)},contents:function(e){return st.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:st.merge([],e.childNodes)}},function(e,t){st.fn[e]=function(n,r){var i=st.map(this,t,n);return Pt.test(e)||(r=n),r&&"string"==typeof r&&(i=st.filter(r,i)),i=this.length>1&&!It[e]?st.unique(i):i,this.length>1&&Rt.test(e)&&(i=i.reverse()),this.pushStack(i)}}),st.extend({filter:function(e,t,n){return n&&(e=":not("+e+")"),1===t.length?st.find.matchesSelector(t[0],e)?[t[0]]:[]:st.find.matches(e,t)},dir:function(e,n,r){for(var i=[],o=e[n];o&&9!==o.nodeType&&(r===t||1!==o.nodeType||!st(o).is(r));)1===o.nodeType&&i.push(o),o=o[n];return i},sibling:function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n}});var zt="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",Xt=/ jQuery\d+="(?:null|\d+)"/g,Ut=RegExp("<(?:"+zt+")[\\s/>]","i"),Vt=/^\s+/,Yt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,Jt=/<([\w:]+)/,Gt=/\s*$/g,on={option:[1,""," "],legend:[1,""," "],area:[1,""," "],param:[1,""," "],thead:[1,""],tr:[2,""],col:[2,""],td:[3,""],_default:st.support.htmlSerialize?[0,"",""]:[1,"X","
"]},an=p(V),sn=an.appendChild(V.createElement("div"));on.optgroup=on.option,on.tbody=on.tfoot=on.colgroup=on.caption=on.thead,on.th=on.td,st.fn.extend({text:function(e){return st.access(this,function(e){return e===t?st.text(this):this.empty().append((this[0]&&this[0].ownerDocument||V).createTextNode(e))},null,e,arguments.length)},wrapAll:function(e){if(st.isFunction(e))return this.each(function(t){st(this).wrapAll(e.call(this,t))});if(this[0]){var t=st(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){for(var e=this;e.firstChild&&1===e.firstChild.nodeType;)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return st.isFunction(e)?this.each(function(t){st(this).wrapInner(e.call(this,t))}):this.each(function(){var t=st(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=st.isFunction(e);return this.each(function(n){st(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){st.nodeName(this,"body")||st(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.appendChild(e)})},prepend:function(){return this.domManip(arguments,!0,function(e){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&this.insertBefore(e,this.firstChild)})},before:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return this.domManip(arguments,!1,function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)})},remove:function(e,t){for(var n,r=0;null!=(n=this[r]);r++)(!e||st.filter(e,[n]).length>0)&&(t||1!==n.nodeType||st.cleanData(b(n)),n.parentNode&&(t&&st.contains(n.ownerDocument,n)&&m(b(n,"script")),n.parentNode.removeChild(n)));return this},empty:function(){for(var e,t=0;null!=(e=this[t]);t++){for(1===e.nodeType&&st.cleanData(b(e,!1));e.firstChild;)e.removeChild(e.firstChild);e.options&&st.nodeName(e,"select")&&(e.options.length=0)}return this},clone:function(e,t){return e=null==e?!1:e,t=null==t?e:t,this.map(function(){return st.clone(this,e,t)})},html:function(e){return st.access(this,function(e){var n=this[0]||{},r=0,i=this.length;if(e===t)return 1===n.nodeType?n.innerHTML.replace(Xt,""):t;if(!("string"!=typeof e||Kt.test(e)||!st.support.htmlSerialize&&Ut.test(e)||!st.support.leadingWhitespace&&Vt.test(e)||on[(Jt.exec(e)||["",""])[1].toLowerCase()])){e=e.replace(Yt,"<$1>$2>");try{for(;i>r;r++)n=this[r]||{},1===n.nodeType&&(st.cleanData(b(n,!1)),n.innerHTML=e);n=0}catch(o){}}n&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(e){var t=st.isFunction(e);return t||"string"==typeof e||(e=st(e).not(this).detach()),this.domManip([e],!0,function(e){var t=this.nextSibling,n=this.parentNode;(n&&1===this.nodeType||11===this.nodeType)&&(st(this).remove(),t?t.parentNode.insertBefore(e,t):n.appendChild(e))})},detach:function(e){return this.remove(e,!0)},domManip:function(e,n,r){e=et.apply([],e);var i,o,a,s,u,l,c=0,f=this.length,p=this,m=f-1,y=e[0],v=st.isFunction(y);if(v||!(1>=f||"string"!=typeof y||st.support.checkClone)&&en.test(y))return this.each(function(i){var o=p.eq(i);v&&(e[0]=y.call(this,i,n?o.html():t)),o.domManip(e,n,r)});if(f&&(i=st.buildFragment(e,this[0].ownerDocument,!1,this),o=i.firstChild,1===i.childNodes.length&&(i=o),o)){for(n=n&&st.nodeName(o,"tr"),a=st.map(b(i,"script"),h),s=a.length;f>c;c++)u=i,c!==m&&(u=st.clone(u,!0,!0),s&&st.merge(a,b(u,"script"))),r.call(n&&st.nodeName(this[c],"table")?d(this[c],"tbody"):this[c],u,c);if(s)for(l=a[a.length-1].ownerDocument,st.map(a,g),c=0;s>c;c++)u=a[c],tn.test(u.type||"")&&!st._data(u,"globalEval")&&st.contains(l,u)&&(u.src?st.ajax({url:u.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):st.globalEval((u.text||u.textContent||u.innerHTML||"").replace(rn,"")));i=o=null}return this}}),st.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,t){st.fn[e]=function(e){for(var n,r=0,i=[],o=st(e),a=o.length-1;a>=r;r++)n=r===a?this:this.clone(!0),st(o[r])[t](n),tt.apply(i,n.get());return this.pushStack(i)}}),st.extend({clone:function(e,t,n){var r,i,o,a,s,u=st.contains(e.ownerDocument,e);if(st.support.html5Clone||st.isXMLDoc(e)||!Ut.test("<"+e.nodeName+">")?s=e.cloneNode(!0):(sn.innerHTML=e.outerHTML,sn.removeChild(s=sn.firstChild)),!(st.support.noCloneEvent&&st.support.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||st.isXMLDoc(e)))for(r=b(s),i=b(e),a=0;null!=(o=i[a]);++a)r[a]&&v(o,r[a]);if(t)if(n)for(i=i||b(e),r=r||b(s),a=0;null!=(o=i[a]);a++)y(o,r[a]);else y(e,s);return r=b(s,"script"),r.length>0&&m(r,!u&&b(e,"script")),r=i=o=null,s},buildFragment:function(e,t,n,r){for(var i,o,a,s,u,l,c,f=e.length,d=p(t),h=[],g=0;f>g;g++)if(o=e[g],o||0===o)if("object"===st.type(o))st.merge(h,o.nodeType?[o]:o);else if(Qt.test(o)){for(s=s||d.appendChild(t.createElement("div")),a=(Jt.exec(o)||["",""])[1].toLowerCase(),u=on[a]||on._default,s.innerHTML=u[1]+o.replace(Yt,"<$1>$2>")+u[2],c=u[0];c--;)s=s.lastChild;if(!st.support.leadingWhitespace&&Vt.test(o)&&h.push(t.createTextNode(Vt.exec(o)[0])),!st.support.tbody)for(o="table"!==a||Gt.test(o)?""!==u[1]||Gt.test(o)?0:s:s.firstChild,c=o&&o.childNodes.length;c--;)st.nodeName(l=o.childNodes[c],"tbody")&&!l.childNodes.length&&o.removeChild(l);for(st.merge(h,s.childNodes),s.textContent="";s.firstChild;)s.removeChild(s.firstChild);s=d.lastChild}else h.push(t.createTextNode(o));for(s&&d.removeChild(s),st.support.appendChecked||st.grep(b(h,"input"),x),g=0;o=h[g++];)if((!r||-1===st.inArray(o,r))&&(i=st.contains(o.ownerDocument,o),s=b(d.appendChild(o),"script"),i&&m(s),n))for(c=0;o=s[c++];)tn.test(o.type||"")&&n.push(o);return s=null,d},cleanData:function(e,n){for(var r,i,o,a,s=0,u=st.expando,l=st.cache,c=st.support.deleteExpando,f=st.event.special;null!=(o=e[s]);s++)if((n||st.acceptData(o))&&(i=o[u],r=i&&l[i])){if(r.events)for(a in r.events)f[a]?st.event.remove(o,a):st.removeEvent(o,a,r.handle);l[i]&&(delete l[i],c?delete o[u]:o.removeAttribute!==t?o.removeAttribute(u):o[u]=null,K.push(i))}}});var un,ln,cn,fn=/alpha\([^)]*\)/i,pn=/opacity\s*=\s*([^)]*)/,dn=/^(top|right|bottom|left)$/,hn=/^(none|table(?!-c[ea]).+)/,gn=/^margin/,mn=RegExp("^("+ut+")(.*)$","i"),yn=RegExp("^("+ut+")(?!px)[a-z%]+$","i"),vn=RegExp("^([+-])=("+ut+")","i"),bn={BODY:"block"},xn={position:"absolute",visibility:"hidden",display:"block"},Tn={letterSpacing:0,fontWeight:400},wn=["Top","Right","Bottom","Left"],Nn=["Webkit","O","Moz","ms"];st.fn.extend({css:function(e,n){return st.access(this,function(e,n,r){var i,o,a={},s=0;if(st.isArray(n)){for(i=ln(e),o=n.length;o>s;s++)a[n[s]]=st.css(e,n[s],!1,i);return a}return r!==t?st.style(e,n,r):st.css(e,n)},e,n,arguments.length>1)},show:function(){return N(this,!0)},hide:function(){return N(this)},toggle:function(e){var t="boolean"==typeof e;return this.each(function(){(t?e:w(this))?st(this).show():st(this).hide()})}}),st.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=un(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":st.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,u=st.camelCase(n),l=e.style;if(n=st.cssProps[u]||(st.cssProps[u]=T(l,u)),s=st.cssHooks[n]||st.cssHooks[u],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:l[n];if(a=typeof r,"string"===a&&(o=vn.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(st.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||st.cssNumber[u]||(r+="px"),st.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(l[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{l[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,u=st.camelCase(n);return n=st.cssProps[u]||(st.cssProps[u]=T(e.style,u)),s=st.cssHooks[n]||st.cssHooks[u],s&&"get"in s&&(o=s.get(e,!0,r)),o===t&&(o=un(e,n,i)),"normal"===o&&n in Tn&&(o=Tn[n]),r?(a=parseFloat(o),r===!0||st.isNumeric(a)?a||0:o):o},swap:function(e,t,n,r){var i,o,a={};for(o in t)a[o]=e.style[o],e.style[o]=t[o];i=n.apply(e,r||[]);for(o in t)e.style[o]=a[o];return i}}),e.getComputedStyle?(ln=function(t){return e.getComputedStyle(t,null)},un=function(e,n,r){var i,o,a,s=r||ln(e),u=s?s.getPropertyValue(n)||s[n]:t,l=e.style;return s&&(""!==u||st.contains(e.ownerDocument,e)||(u=st.style(e,n)),yn.test(u)&&gn.test(n)&&(i=l.width,o=l.minWidth,a=l.maxWidth,l.minWidth=l.maxWidth=l.width=u,u=s.width,l.width=i,l.minWidth=o,l.maxWidth=a)),u}):V.documentElement.currentStyle&&(ln=function(e){return e.currentStyle},un=function(e,n,r){var i,o,a,s=r||ln(e),u=s?s[n]:t,l=e.style;return null==u&&l&&l[n]&&(u=l[n]),yn.test(u)&&!dn.test(n)&&(i=l.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),l.left="fontSize"===n?"1em":u,u=l.pixelLeft+"px",l.left=i,a&&(o.left=a)),""===u?"auto":u}),st.each(["height","width"],function(e,n){st.cssHooks[n]={get:function(e,r,i){return r?0===e.offsetWidth&&hn.test(st.css(e,"display"))?st.swap(e,xn,function(){return E(e,n,i)}):E(e,n,i):t},set:function(e,t,r){var i=r&&ln(e);return C(e,t,r?k(e,n,r,st.support.boxSizing&&"border-box"===st.css(e,"boxSizing",!1,i),i):0)}}}),st.support.opacity||(st.cssHooks.opacity={get:function(e,t){return pn.test((t&&e.currentStyle?e.currentStyle.filter:e.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":t?"1":""},set:function(e,t){var n=e.style,r=e.currentStyle,i=st.isNumeric(t)?"alpha(opacity="+100*t+")":"",o=r&&r.filter||n.filter||"";n.zoom=1,(t>=1||""===t)&&""===st.trim(o.replace(fn,""))&&n.removeAttribute&&(n.removeAttribute("filter"),""===t||r&&!r.filter)||(n.filter=fn.test(o)?o.replace(fn,i):o+" "+i)}}),st(function(){st.support.reliableMarginRight||(st.cssHooks.marginRight={get:function(e,n){return n?st.swap(e,{display:"inline-block"},un,[e,"marginRight"]):t}}),!st.support.pixelPosition&&st.fn.position&&st.each(["top","left"],function(e,n){st.cssHooks[n]={get:function(e,r){return r?(r=un(e,n),yn.test(r)?st(e).position()[n]+"px":r):t}}})}),st.expr&&st.expr.filters&&(st.expr.filters.hidden=function(e){return 0===e.offsetWidth&&0===e.offsetHeight||!st.support.reliableHiddenOffsets&&"none"===(e.style&&e.style.display||st.css(e,"display"))},st.expr.filters.visible=function(e){return!st.expr.filters.hidden(e)}),st.each({margin:"",padding:"",border:"Width"},function(e,t){st.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];4>r;r++)i[e+wn[r]+t]=o[r]||o[r-2]||o[0];return i}},gn.test(e)||(st.cssHooks[e+t].set=C)});var Cn=/%20/g,kn=/\[\]$/,En=/\r?\n/g,Sn=/^(?:submit|button|image|reset)$/i,An=/^(?:input|select|textarea|keygen)/i;st.fn.extend({serialize:function(){return st.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=st.prop(this,"elements");return e?st.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!st(this).is(":disabled")&&An.test(this.nodeName)&&!Sn.test(e)&&(this.checked||!Zt.test(e))}).map(function(e,t){var n=st(this).val();return null==n?null:st.isArray(n)?st.map(n,function(e){return{name:t.name,value:e.replace(En,"\r\n")}}):{name:t.name,value:n.replace(En,"\r\n")}}).get()}}),st.param=function(e,n){var r,i=[],o=function(e,t){t=st.isFunction(t)?t():null==t?"":t,i[i.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)};if(n===t&&(n=st.ajaxSettings&&st.ajaxSettings.traditional),st.isArray(e)||e.jquery&&!st.isPlainObject(e))st.each(e,function(){o(this.name,this.value)});else for(r in e)j(r,e[r],n,o);return i.join("&").replace(Cn,"+")};var jn,Dn,Ln=st.now(),Hn=/\?/,Mn=/#.*$/,qn=/([?&])_=[^&]*/,_n=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Fn=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,On=/^(?:GET|HEAD)$/,Bn=/^\/\//,Pn=/^([\w.+-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,Rn=st.fn.load,Wn={},$n={},In="*/".concat("*");try{Dn=Y.href}catch(zn){Dn=V.createElement("a"),Dn.href="",Dn=Dn.href}jn=Pn.exec(Dn.toLowerCase())||[],st.fn.load=function(e,n,r){if("string"!=typeof e&&Rn)return Rn.apply(this,arguments);var i,o,a,s=this,u=e.indexOf(" ");return u>=0&&(i=e.slice(u,e.length),e=e.slice(0,u)),st.isFunction(n)?(r=n,n=t):n&&"object"==typeof n&&(o="POST"),s.length>0&&st.ajax({url:e,type:o,dataType:"html",data:n}).done(function(e){a=arguments,s.html(i?st("").append(st.parseHTML(e)).find(i):e)}).complete(r&&function(e,t){s.each(r,a||[e.responseText,t,e])}),this},st.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){st.fn[t]=function(e){return this.on(t,e)}}),st.each(["get","post"],function(e,n){st[n]=function(e,r,i,o){return st.isFunction(r)&&(o=o||i,i=r,r=t),st.ajax({url:e,type:n,dataType:o,data:r,success:i})}}),st.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Dn,type:"GET",isLocal:Fn.test(jn[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":In,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":e.String,"text html":!0,"text json":st.parseJSON,"text xml":st.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?H(H(e,st.ajaxSettings),t):H(st.ajaxSettings,e)},ajaxPrefilter:D(Wn),ajaxTransport:D($n),ajax:function(e,n){function r(e,n,r,s){var l,f,v,b,T,N=n;2!==x&&(x=2,u&&clearTimeout(u),i=t,a=s||"",w.readyState=e>0?4:0,r&&(b=M(p,w,r)),e>=200&&300>e||304===e?(p.ifModified&&(T=w.getResponseHeader("Last-Modified"),T&&(st.lastModified[o]=T),T=w.getResponseHeader("etag"),T&&(st.etag[o]=T)),304===e?(l=!0,N="notmodified"):(l=q(p,b),N=l.state,f=l.data,v=l.error,l=!v)):(v=N,(e||!N)&&(N="error",0>e&&(e=0))),w.status=e,w.statusText=(n||N)+"",l?g.resolveWith(d,[f,N,w]):g.rejectWith(d,[w,N,v]),w.statusCode(y),y=t,c&&h.trigger(l?"ajaxSuccess":"ajaxError",[w,p,l?f:v]),m.fireWith(d,[w,N]),c&&(h.trigger("ajaxComplete",[w,p]),--st.active||st.event.trigger("ajaxStop")))}"object"==typeof e&&(n=e,e=t),n=n||{};var i,o,a,s,u,l,c,f,p=st.ajaxSetup({},n),d=p.context||p,h=p.context&&(d.nodeType||d.jquery)?st(d):st.event,g=st.Deferred(),m=st.Callbacks("once memory"),y=p.statusCode||{},v={},b={},x=0,T="canceled",w={readyState:0,getResponseHeader:function(e){var t;if(2===x){if(!s)for(s={};t=_n.exec(a);)s[t[1].toLowerCase()]=t[2];t=s[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return 2===x?a:null},setRequestHeader:function(e,t){var n=e.toLowerCase();return x||(e=b[n]=b[n]||e,v[e]=t),this},overrideMimeType:function(e){return x||(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(2>x)for(t in e)y[t]=[y[t],e[t]];else w.always(e[w.status]);return this},abort:function(e){var t=e||T;return i&&i.abort(t),r(0,t),this}};if(g.promise(w).complete=m.add,w.success=w.done,w.error=w.fail,p.url=((e||p.url||Dn)+"").replace(Mn,"").replace(Bn,jn[1]+"//"),p.type=n.method||n.type||p.method||p.type,p.dataTypes=st.trim(p.dataType||"*").toLowerCase().match(lt)||[""],null==p.crossDomain&&(l=Pn.exec(p.url.toLowerCase()),p.crossDomain=!(!l||l[1]===jn[1]&&l[2]===jn[2]&&(l[3]||("http:"===l[1]?80:443))==(jn[3]||("http:"===jn[1]?80:443)))),p.data&&p.processData&&"string"!=typeof p.data&&(p.data=st.param(p.data,p.traditional)),L(Wn,p,n,w),2===x)return w;c=p.global,c&&0===st.active++&&st.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!On.test(p.type),o=p.url,p.hasContent||(p.data&&(o=p.url+=(Hn.test(o)?"&":"?")+p.data,delete p.data),p.cache===!1&&(p.url=qn.test(o)?o.replace(qn,"$1_="+Ln++):o+(Hn.test(o)?"&":"?")+"_="+Ln++)),p.ifModified&&(st.lastModified[o]&&w.setRequestHeader("If-Modified-Since",st.lastModified[o]),st.etag[o]&&w.setRequestHeader("If-None-Match",st.etag[o])),(p.data&&p.hasContent&&p.contentType!==!1||n.contentType)&&w.setRequestHeader("Content-Type",p.contentType),w.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+In+"; q=0.01":""):p.accepts["*"]);for(f in p.headers)w.setRequestHeader(f,p.headers[f]);if(p.beforeSend&&(p.beforeSend.call(d,w,p)===!1||2===x))return w.abort();T="abort";for(f in{success:1,error:1,complete:1})w[f](p[f]);if(i=L($n,p,n,w)){w.readyState=1,c&&h.trigger("ajaxSend",[w,p]),p.async&&p.timeout>0&&(u=setTimeout(function(){w.abort("timeout")},p.timeout));try{x=1,i.send(v,r)}catch(N){if(!(2>x))throw N;r(-1,N)}}else r(-1,"No Transport");return w},getScript:function(e,n){return st.get(e,t,n,"script")},getJSON:function(e,t,n){return st.get(e,t,n,"json")}}),st.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(e){return st.globalEval(e),e}}}),st.ajaxPrefilter("script",function(e){e.cache===t&&(e.cache=!1),e.crossDomain&&(e.type="GET",e.global=!1)}),st.ajaxTransport("script",function(e){if(e.crossDomain){var n,r=V.head||st("head")[0]||V.documentElement;return{send:function(t,i){n=V.createElement("script"),n.async=!0,e.scriptCharset&&(n.charset=e.scriptCharset),n.src=e.url,n.onload=n.onreadystatechange=function(e,t){(t||!n.readyState||/loaded|complete/.test(n.readyState))&&(n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n),n=null,t||i(200,"success"))},r.insertBefore(n,r.firstChild)},abort:function(){n&&n.onload(t,!0)}}}});var Xn=[],Un=/(=)\?(?=&|$)|\?\?/;st.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xn.pop()||st.expando+"_"+Ln++;return this[e]=!0,e}}),st.ajaxPrefilter("json jsonp",function(n,r,i){var o,a,s,u=n.jsonp!==!1&&(Un.test(n.url)?"url":"string"==typeof n.data&&!(n.contentType||"").indexOf("application/x-www-form-urlencoded")&&Un.test(n.data)&&"data");return u||"jsonp"===n.dataTypes[0]?(o=n.jsonpCallback=st.isFunction(n.jsonpCallback)?n.jsonpCallback():n.jsonpCallback,u?n[u]=n[u].replace(Un,"$1"+o):n.jsonp!==!1&&(n.url+=(Hn.test(n.url)?"&":"?")+n.jsonp+"="+o),n.converters["script json"]=function(){return s||st.error(o+" was not called"),s[0]},n.dataTypes[0]="json",a=e[o],e[o]=function(){s=arguments},i.always(function(){e[o]=a,n[o]&&(n.jsonpCallback=r.jsonpCallback,Xn.push(o)),s&&st.isFunction(a)&&a(s[0]),s=a=t}),"script"):t});var Vn,Yn,Jn=0,Gn=e.ActiveXObject&&function(){var e;for(e in Vn)Vn[e](t,!0)};st.ajaxSettings.xhr=e.ActiveXObject?function(){return!this.isLocal&&_()||F()}:_,Yn=st.ajaxSettings.xhr(),st.support.cors=!!Yn&&"withCredentials"in Yn,Yn=st.support.ajax=!!Yn,Yn&&st.ajaxTransport(function(n){if(!n.crossDomain||st.support.cors){var r;return{send:function(i,o){var a,s,u=n.xhr();if(n.username?u.open(n.type,n.url,n.async,n.username,n.password):u.open(n.type,n.url,n.async),n.xhrFields)for(s in n.xhrFields)u[s]=n.xhrFields[s];n.mimeType&&u.overrideMimeType&&u.overrideMimeType(n.mimeType),n.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest");try{for(s in i)u.setRequestHeader(s,i[s])}catch(l){}u.send(n.hasContent&&n.data||null),r=function(e,i){var s,l,c,f,p;try{if(r&&(i||4===u.readyState))if(r=t,a&&(u.onreadystatechange=st.noop,Gn&&delete Vn[a]),i)4!==u.readyState&&u.abort();else{f={},s=u.status,p=u.responseXML,c=u.getAllResponseHeaders(),p&&p.documentElement&&(f.xml=p),"string"==typeof u.responseText&&(f.text=u.responseText);try{l=u.statusText}catch(d){l=""}s||!n.isLocal||n.crossDomain?1223===s&&(s=204):s=f.text?200:404}}catch(h){i||o(-1,h)}f&&o(s,l,f,c)},n.async?4===u.readyState?setTimeout(r):(a=++Jn,Gn&&(Vn||(Vn={},st(e).unload(Gn)),Vn[a]=r),u.onreadystatechange=r):r()},abort:function(){r&&r(t,!0)}}}});var Qn,Kn,Zn=/^(?:toggle|show|hide)$/,er=RegExp("^(?:([+-])=|)("+ut+")([a-z%]*)$","i"),tr=/queueHooks$/,nr=[W],rr={"*":[function(e,t){var n,r,i=this.createTween(e,t),o=er.exec(t),a=i.cur(),s=+a||0,u=1,l=20;if(o){if(n=+o[2],r=o[3]||(st.cssNumber[e]?"":"px"),"px"!==r&&s){s=st.css(i.elem,e,!0)||n||1;do u=u||".5",s/=u,st.style(i.elem,e,s+r);while(u!==(u=i.cur()/a)&&1!==u&&--l)}i.unit=r,i.start=s,i.end=o[1]?s+(o[1]+1)*n:n}return i}]};st.Animation=st.extend(P,{tweener:function(e,t){st.isFunction(e)?(t=e,e=["*"]):e=e.split(" ");for(var n,r=0,i=e.length;i>r;r++)n=e[r],rr[n]=rr[n]||[],rr[n].unshift(t)},prefilter:function(e,t){t?nr.unshift(e):nr.push(e)}}),st.Tween=$,$.prototype={constructor:$,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||"swing",this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(st.cssNumber[n]?"":"px")},cur:function(){var e=$.propHooks[this.prop];return e&&e.get?e.get(this):$.propHooks._default.get(this)},run:function(e){var t,n=$.propHooks[this.prop];return this.pos=t=this.options.duration?st.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):$.propHooks._default.set(this),this}},$.prototype.init.prototype=$.prototype,$.propHooks={_default:{get:function(e){var t;return null==e.elem[e.prop]||e.elem.style&&null!=e.elem.style[e.prop]?(t=st.css(e.elem,e.prop,"auto"),t&&"auto"!==t?t:0):e.elem[e.prop]},set:function(e){st.fx.step[e.prop]?st.fx.step[e.prop](e):e.elem.style&&(null!=e.elem.style[st.cssProps[e.prop]]||st.cssHooks[e.prop])?st.style(e.elem,e.prop,e.now+e.unit):e.elem[e.prop]=e.now}}},$.propHooks.scrollTop=$.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},st.each(["toggle","show","hide"],function(e,t){var n=st.fn[t];st.fn[t]=function(e,r,i){return null==e||"boolean"==typeof e?n.apply(this,arguments):this.animate(I(t,!0),e,r,i)}}),st.fn.extend({fadeTo:function(e,t,n,r){return this.filter(w).css("opacity",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=st.isEmptyObject(e),o=st.speed(t,n,r),a=function(){var t=P(this,st.extend({},e),o);a.finish=function(){t.stop(!0)},(i||st._data(this,"finish"))&&t.stop(!0)};return a.finish=a,i||o.queue===!1?this.each(a):this.queue(o.queue,a)},stop:function(e,n,r){var i=function(e){var t=e.stop;delete e.stop,t(r)};return"string"!=typeof e&&(r=n,n=e,e=t),n&&e!==!1&&this.queue(e||"fx",[]),this.each(function(){var t=!0,n=null!=e&&e+"queueHooks",o=st.timers,a=st._data(this);if(n)a[n]&&a[n].stop&&i(a[n]);else for(n in a)a[n]&&a[n].stop&&tr.test(n)&&i(a[n]);for(n=o.length;n--;)o[n].elem!==this||null!=e&&o[n].queue!==e||(o[n].anim.stop(r),t=!1,o.splice(n,1));(t||!r)&&st.dequeue(this,e)})},finish:function(e){return e!==!1&&(e=e||"fx"),this.each(function(){var t,n=st._data(this),r=n[e+"queue"],i=n[e+"queueHooks"],o=st.timers,a=r?r.length:0;for(n.finish=!0,st.queue(this,e,[]),i&&i.cur&&i.cur.finish&&i.cur.finish.call(this),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;a>t;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish})}}),st.each({slideDown:I("show"),slideUp:I("hide"),slideToggle:I("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,t){st.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}}),st.speed=function(e,t,n){var r=e&&"object"==typeof e?st.extend({},e):{complete:n||!n&&t||st.isFunction(e)&&e,duration:e,easing:n&&t||t&&!st.isFunction(t)&&t};return r.duration=st.fx.off?0:"number"==typeof r.duration?r.duration:r.duration in st.fx.speeds?st.fx.speeds[r.duration]:st.fx.speeds._default,(null==r.queue||r.queue===!0)&&(r.queue="fx"),r.old=r.complete,r.complete=function(){st.isFunction(r.old)&&r.old.call(this),r.queue&&st.dequeue(this,r.queue)},r},st.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2}},st.timers=[],st.fx=$.prototype.init,st.fx.tick=function(){var e,n=st.timers,r=0;for(Qn=st.now();n.length>r;r++)e=n[r],e()||n[r]!==e||n.splice(r--,1);n.length||st.fx.stop(),Qn=t},st.fx.timer=function(e){e()&&st.timers.push(e)&&st.fx.start()},st.fx.interval=13,st.fx.start=function(){Kn||(Kn=setInterval(st.fx.tick,st.fx.interval))},st.fx.stop=function(){clearInterval(Kn),Kn=null},st.fx.speeds={slow:600,fast:200,_default:400},st.fx.step={},st.expr&&st.expr.filters&&(st.expr.filters.animated=function(e){return st.grep(st.timers,function(t){return e===t.elem}).length}),st.fn.offset=function(e){if(arguments.length)return e===t?this:this.each(function(t){st.offset.setOffset(this,e,t)});var n,r,i={top:0,left:0},o=this[0],a=o&&o.ownerDocument;if(a)return n=a.documentElement,st.contains(n,o)?(o.getBoundingClientRect!==t&&(i=o.getBoundingClientRect()),r=z(a),{top:i.top+(r.pageYOffset||n.scrollTop)-(n.clientTop||0),left:i.left+(r.pageXOffset||n.scrollLeft)-(n.clientLeft||0)}):i},st.offset={setOffset:function(e,t,n){var r=st.css(e,"position");"static"===r&&(e.style.position="relative");var i,o,a=st(e),s=a.offset(),u=st.css(e,"top"),l=st.css(e,"left"),c=("absolute"===r||"fixed"===r)&&st.inArray("auto",[u,l])>-1,f={},p={};c?(p=a.position(),i=p.top,o=p.left):(i=parseFloat(u)||0,o=parseFloat(l)||0),st.isFunction(t)&&(t=t.call(e,n,s)),null!=t.top&&(f.top=t.top-s.top+i),null!=t.left&&(f.left=t.left-s.left+o),"using"in t?t.using.call(e,f):a.css(f)}},st.fn.extend({position:function(){if(this[0]){var e,t,n={top:0,left:0},r=this[0];return"fixed"===st.css(r,"position")?t=r.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),st.nodeName(e[0],"html")||(n=e.offset()),n.top+=st.css(e[0],"borderTopWidth",!0),n.left+=st.css(e[0],"borderLeftWidth",!0)),{top:t.top-n.top-st.css(r,"marginTop",!0),left:t.left-n.left-st.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent||V.documentElement;e&&!st.nodeName(e,"html")&&"static"===st.css(e,"position");)e=e.offsetParent;return e||V.documentElement})}}),st.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(e,n){var r=/Y/.test(n);st.fn[e]=function(i){return st.access(this,function(e,i,o){var a=z(e);return o===t?a?n in a?a[n]:a.document.documentElement[i]:e[i]:(a?a.scrollTo(r?st(a).scrollLeft():o,r?o:st(a).scrollTop()):e[i]=o,t)},e,i,arguments.length,null)}}),st.each({Height:"height",Width:"width"},function(e,n){st.each({padding:"inner"+e,content:n,"":"outer"+e},function(r,i){st.fn[i]=function(i,o){var a=arguments.length&&(r||"boolean"!=typeof i),s=r||(i===!0||o===!0?"margin":"border");return st.access(this,function(n,r,i){var o;return st.isWindow(n)?n.document.documentElement["client"+e]:9===n.nodeType?(o=n.documentElement,Math.max(n.body["scroll"+e],o["scroll"+e],n.body["offset"+e],o["offset"+e],o["client"+e])):i===t?st.css(n,r,s):st.style(n,r,i,s)},n,a?i:t,a,null)}})}),e.jQuery=e.$=st,"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return st})})(window);
+//@ sourceMappingURL=jquery.min.map
\ No newline at end of file
diff --git a/test/express4_error_handling/public/javascripts/test_cases.js b/test/express4_error_handling/public/javascripts/test_cases.js
new file mode 100644
index 0000000..09387c0
--- /dev/null
+++ b/test/express4_error_handling/public/javascripts/test_cases.js
@@ -0,0 +1,107 @@
+
+;
+(function(){var tmpl;return tmpl=toffee.templates["/big_file/input.toffee"]={bundlePath:"/big_file/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var count,i,__repress,_i,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/big_file/input.toffee"),__locals){for(__toffee.out=[],_ts(1),_ts(2),count=0,i=_i=0;2>_i;i=++_i)_ts(1),_ts(1),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("..."),_ts(2),_ts(2),count+=1,print(" "+count+"..."),_ts(1),_to(" "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("... "),_to(""+escape(count++)),_to("..."),_ts(2),_ts(2),count+=1,print(" "+count+"...");return __toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res}},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/big_file/output.toffee"]={bundlePath:"/big_file/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/big_file/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("0... 1... 2... 3... 4... 5... 6... 7... 8... 9... 10... 11... 12... 13... 14... 15... 16... 17... 18... 19... 20... 21... 22... 23... 24... 25... 26... 27... 28... 29... 30... 31... 32... 33... 34... 35... 36... 37... 38... 39... 40... 41... 42... 43... 44... 45... 46... 47... 48... 49... 50... 51... 52... 53... 54... 55... 56... 57... 58... 59... 60... 61... 62... 63... 64... 65... 66... 67... 68... 70... 70... 71... 72... 73... 74... 75... 76... 77... 78... 79... 80... 81... 82... 83... 84... 85... 86... 87... 88... 89... 90... 91... 92... 93... 94... 95... 96... 97... 98... 99... 100... 101... 102... 103... 104... 105... 106... 107... 108... 109... 110... 111... 112... 113... 114... 115... 116... 117... 118... 119... 120... 121... 122... 123... 124... 125... 126... 127... 128... 129... 130... 131... 132... 133... 134... 135... 136... 137... 138... 139... 140... 141... 142... 143... 144... 145... 146... 147... 148... 149... 150... 151... 152... 153... 154... 155... 156... 157... 158... 159... 160... 162...162... 163... 164... 165... 166... 167... 168... 169... 170... 171... 172... 173... 174... 175... 176... 177... 178... 179... 180... 181... 182... 183... 184... 185... 186... 187... 188... 189... 190... 191... 192... 193... 194... 195... 196... 197... 198... 199... 200... 201... 202... 203... 204... 205... 206... 207... 208... 209... 210... 211... 212... 213... 214... 215... 216... 217... 218... 219... 220... 221... 222... 223... 224... 225... 226... 227... 228... 229... 230... 232... 232... 233... 234... 235... 236... 237... 238... 239... 240... 241... 242... 243... 244... 245... 246... 247... 248... 249... 250... 251... 252... 253... 254... 255... 256... 257... 258... 259... 260... 261... 262... 263... 264... 265... 266... 267... 268... 269... 270... 271... 272... 273... 274... 275... 276... 277... 278... 279... 280... 281... 282... 283... 284... 285... 286... 287... 288... 289... 290... 291... 292... 293... 294... 295... 296... 297... 298... 299... 300... 301... 302... 303... 304... 305... 306... 307... 308... 309... 310... 311... 312... 313... 314... 315... 316... 317... 318... 319... 320... 321... 322... 324..."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/comments/input.toffee"]={bundlePath:"/comments/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/comments/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to("Pass 1\n"),_ts(2),_ts(1),_to("\n"),_to("Pass 2\n"),_ts(2),_ts(2),_ts(1),_to("\n"),_to("Pass 3"),_ts(2),_ts(1),_to("\n"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/comments/output.toffee"]={bundlePath:"/comments/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/comments/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to("Pass 1\n"),_to("\n"),_to("Pass 2\n"),_to("\n"),_to("Pass 3\n"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/custom_escape/input.toffee"]={bundlePath:"/custom_escape/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var w,x,y,z,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/custom_escape/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),x='"Hello world"',y="
",z="click&clack",w=[1,2,{place:"The Dreadfort"}],_ts(1),_to("\n"),_to(" custom x = "),_to(""+(null!=x?escape(x):"")),_to("\n"),_to(" custom y = "),_to(""+(null!=y?escape(y):"")),_to("\n"),_to(" custom z = "),_to(""+(null!=z?escape(z):"")),_to("\n"),_to(" custom w = "),_to(""+(null!=w?escape(w):"")),_to("\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/custom_escape/output.toffee"]={bundlePath:"/custom_escape/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/custom_escape/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to(" custom x = Helloworldscriptvarx100script\n"),_to(" custom y = td\n"),_to(" custom z = clickclack\n"),_to(" custom w = 12objectObject\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/eco_compare/input.toffee"]={bundlePath:"/eco_compare/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var f,friends,project,__repress,_i,_len,_ln,_ref,_ref1,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/eco_compare/input.toffee"),__locals){if(__toffee.out=[],_ts(1),_ts(2),this.projects=[{url:"http://localhost:3000",name:"okcupid",description:"A site for singles"},{url:"http://localhost:3001",name:"tallygram",description:"A site for anyone"}],this.projects.length)for(_ref1=this.projects,_i=0,_len=_ref1.length;_len>_i;_i++)project=_ref1[_i],_ts(1),_ts(1),_to("\n"),_to(' '),_to(""+escape(project.name)),_to(" \n"),_to(" "),_to(""+escape(project.description)),_to("
\n"),_to(" "),_ts(2);else _ts(1),_ts(1),_to(" No projects "),_ts(2);return friends=[{gender:"f",name:"Jennie"},{gender:"f",name:"Rachel"},{gender:"m",name:"Petar"},{gender:"f",name:"Marissa"}],_ts(1),_to("\n"),_to("\n"),_to("You have "),_to(""+escape(function(){var e,t,_;for(_=[],e=0,t=friends.length;t>e;e++)f=friends[e],"f"===f.gender&&_.push(f);return _}().length)),_to(" female friends."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res}},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/eco_compare/output.toffee"]={bundlePath:"/eco_compare/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/eco_compare/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to(' okcupid \n'),_to(" A site for singles
\n"),_to(" \n"),_to(' tallygram \n'),_to(" A site for anyone
\n"),_to(" \n"),_to("\n"),_to("You have 3 female friends."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/escape/input.toffee"]={bundlePath:"/escape/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var w,x,y,z,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/escape/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),x='"Hello world"',y=" ",z="click&clack",w=[1,2,{place:"The Dreadfort"}],_ts(1),_to("\n"),_to(" default x = "),_to(""+(null!=x?escape(x):"")),_to("\n"),_to(" default y = "),_to(""+(null!=y?escape(y):"")),_to("\n"),_to(" default z = "),_to(""+(null!=z?escape(z):"")),_to("\n"),_to(" default w = "),_to(""+(null!=w?escape(w):"")),_to("\n"),_to(" default r = "),_to(""+("undefined"!=typeof r&&null!==r?escape(r):"")),_to("\n"),_to(" default w.foo = "),_to(""+escape(w.foo)),_to("\n"),_to("
\n"),_to("\n"),_to(" raw x = "),_to(""+raw(x)),_to("\n"),_to(" raw y = "),_to(""+raw(y)),_to("\n"),_to(" raw z = "),_to(""+raw(z)),_to("\n"),_to(" raw w = "),_to(""+raw(w)),_to("\n"),_to("
\n"),_to("\n"),_to("\n"),_ts(2),_ts(2),print(" raw printed x = "+x+"\n"),print(" raw printed y = "+y+"\n"),print(" raw printed z = "+z+"\n"),print(" raw printed w = "+w),_ts(1),_to("\n"),_to("
\n"),_to("\n"),_ts(2),_ts(2),print(" json printed x = "+raw(raw(raw(raw(json(x)))))+"\n"),print(" json printed y = "+raw(raw(raw(raw(json(y)))))+"\n"),print(" json printed z = "+raw(raw(raw(raw(json(z)))))+"\n"),print(" json printed w = "+raw(raw(raw(raw(json(w)))))),_ts(1),_to("\n"),_to("
\n"),_to("\n"),_ts(2),_ts(2),print(" html printed longhand x = "+__toffee.html(x)+"\n"),print(" html printed longhand y = "+__toffee.html(y)+"\n"),print(" html printed longhand z = "+__toffee.html(z)+"\n"),print(" html printed longhand w = "+__toffee.html(w)),_ts(1),_to("\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/escape/output.toffee"]={bundlePath:"/escape/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/escape/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to(" default x = "Hello world"\n"),_to(" default y = <hr />\n"),_to(" default z = click&clack\n"),_to(' default w = [1,2,{"place":"The Dreadfort"}]\n'),_to(" default r = \n"),_to(" default w.foo = \n"),_to("
\n"),_to("\n"),_to(' raw x = "Hello world"\n'),_to(" raw y =
\n"),_to(" raw z = click&clack\n"),_to(" raw w = 1,2,[object Object]\n"),_to("\n"),_to("\n"),_to("\n"),_to(' raw printed x = "Hello world"\n'),_to(" raw printed y =
\n"),_to(" raw printed z = click&clack\n"),_to(" raw printed w = 1,2,[object Object]\n"),_to("\n"),_to("\n"),_to(' json printed x = "\\"Hello world\\""\n'),_to(' json printed y = "\\u003Chr /\\u003E"\n'),_to(' json printed z = "click\\u0026clack"\n'),_to(' json printed w = [1,2,{"place":"The Dreadfort"}]\n'),_to("
\n"),_to("\n"),_to(" html printed longhand x = "Hello world"\n"),_to(" html printed longhand y = <hr />\n"),_to(" html printed longhand z = click&clack\n"),_to(" html printed longhand w = 1,2,[object Object]\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/hello_world/input.toffee"]={bundlePath:"/hello_world/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/hello_world/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+("undefined"!=typeof greeting&&null!==greeting?escape(greeting):"")),_to(", world."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/hello_world/output.toffee"]={bundlePath:"/hello_world/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/hello_world/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("Hello, world."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/hello_world/temp.toffee"]={bundlePath:"/hello_world/temp.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/hello_world/temp.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("a\n"),_to("b\n"),_to("c\n"),_to(""+escape(passed_fn(100))),_to("\n"),_to("d\n"),_to("e\n"),_to("f"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_order/child.toffee"]={bundlePath:"/include_order/child.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/include_order/child.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("a\n"),_ts(2),_ts(2),say_hi(),_ts(1),_to("\n"),_to("b"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_order/input.toffee"]={bundlePath:"/include_order/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var say_hi,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/include_order/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),say_hi=function(){return _ts(1),_ts(1),_to("hi"),_ts(2)},_ts(1),_to("1\n"),_to("2\n"),_to(""+partial("child.toffee",{say_hi:say_hi})),_to("\n"),_to("3\n"),_to("4"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_order/output.toffee"]={bundlePath:"/include_order/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/include_order/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("1\n"),_to("2\n"),_to("hia\n"),_to("\n"),_to("b\n"),_to("3\n"),_to("4"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_recursion/input.toffee"]={bundlePath:"/include_recursion/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/include_recursion/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),0===countdown?(_ts(1),_ts(1),_to("blastoff!"),_ts(2)):print(""+countdown+"..."+partial("input.toffee",{countdown:countdown-1})),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_recursion/output.toffee"]={bundlePath:"/include_recursion/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/include_recursion/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("10...9...8...7...6...5...4...3...2...1...blastoff!"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_techniques/input.toffee"]={bundlePath:"/include_techniques/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/include_techniques/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+partial("message.toffee",{from:"Chris "})),_to("\n"),_to(""+partial("message.toffee",{from:"Max & Sam"})),_to("\n"),_ts(2),_ts(2),print(partial("message.toffee",{from:"Christian"})),_ts(1),_ts(1),_to(""+partial("message.toffee",{from:"Jennie"})),_ts(2),print(partial("message.toffee",{sender:"The enemy"})),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_techniques/message.toffee"]={bundlePath:"/include_techniques/message.toffee"},tmpl.render=tmpl.pub=function(__locals){var from,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/include_techniques/message.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),from=from||"Unknown",_ts(1),_to("From: "),_to(""+(null!=from?escape(from):"")),_to(" \n"),_to("Msg: Hello, world\n"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/include_techniques/output.toffee"]={bundlePath:"/include_techniques/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/include_techniques/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("From: Chris <ccoyne77@gmail> \n"),_to("Msg: Hello, world\n"),_to("\n"),_to("From: Max & Sam \n"),_to("Msg: Hello, world\n"),_to("\n"),_to("From: Christian \n"),_to("Msg: Hello, world\n"),_to("From: Jennie \n"),_to("Msg: Hello, world\n"),_to("From: Unknown \n"),_to("Msg: Hello, world\n"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/indent_attack/input.toffee"]={bundlePath:"/indent_attack/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var i,square,x,__repress,_i,_j,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/indent_attack/input.toffee"),__locals){if(__toffee.out=[],_ts(1),_ts(1),_to(" \n"),_to(" "),_ts(2),_ts(2),_ts(1),_ts(1),_to("Pass1"),_ts(2),_ts(1),_ts(1),_to("Pass2"),_ts(2),_ts(1),_to("\n"),_to(" \n"),_to("\n"),_ts(2),_ts(2),_ts(1),_ts(1),_to("Pass3"),_ts(2),_ts(1),_ts(1),_to("Pass4"),_ts(2),_ts(1),_to("\n"),_to(" \n"),_to("\n"),_ts(2),_ts(2),_ts(1),_ts(1),_to("Pass5"),_ts(2),_ts(1),_ts(1),_to("Pass6"),_ts(2),_ts(1),_to("\n"),_to("\n"),_ts(2),_ts(2),print("Pass7"),_ts(1),_ts(1),_to("Pass8"),_ts(2),_ts(1),_to("\n"),_to("\n"),_ts(2),_ts(2),_ts(1),_ts(1),_to("...passed with flying colors."),_ts(2),_ts(1),_to("\n"),_to("\n"),_to(" "),_ts(2),_ts(2),x=20,x>1)for(i=_i=12;x>=12?x>_i:_i>x;i=x>=12?++_i:--_i)square=16,_ts(1),_ts(1),_to("Pass"),_to(""+(null!=i?escape(i):"")),_ts(2),_ts(2),i===square&&(_ts(1),_ts(1),_to("(a perfect square)"),_ts(2));if(_ts(1),_to("\n"),_to(" "),_ts(2),_ts(2),x=20,x>1){for(i=_j=12;x>=12?x>_j:_j>x;i=x>=12?++_j:--_j)square=16;_ts(1),_ts(1),_to("Pass"),_to(""+(null!=i?escape(i):"")),_ts(2),_ts(2),i===square&&(_ts(1),_ts(1),_to("(a perfect square)"),_ts(2))}return _ts(1),_to("\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res}},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/indent_attack/output.toffee"]={bundlePath:"/indent_attack/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/indent_attack/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(" \n"),_to(" Pass1Pass2\n"),_to(" \n"),_to("\n"),_to("Pass3Pass4\n"),_to(" \n"),_to("\n"),_to("Pass5Pass6\n"),_to("\n"),_to("Pass7Pass8\n"),_to("\n"),_to("...passed with flying colors.\n"),_to("\n"),_to(" Pass12Pass13Pass14Pass15Pass16(a perfect square)Pass17Pass18Pass19\n"),_to(" Pass20\n"),_to("
"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/junk/input.toffee"]={bundlePath:"/junk/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var supplies,supply,__repress,_i,_len,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/junk/input.toffee"),__locals){for(__toffee.out=[],_ts(1),_ts(2),supplies=["broom","mop","vacuum"],_ts(1),_to("\n"),_to(" "),_ts(2),_ts(2),_i=0,_len=supplies.length;_len>_i;_i++)supply=supplies[_i],_ts(1),_ts(1),_to(""),_to(""+(null!=supply?escape(supply):"")),_to(" "),_ts(2);return _ts(1),_to("\n"),_to(" "),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res}},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/junk/output.toffee"]={bundlePath:"/junk/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/junk/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to(" broom mop vacuum \n"),_to(" "),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/lambda_fns/input.toffee"]={bundlePath:"/lambda_fns/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var echo_it,print_it,print_it_twice,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(t){return __locals.__toffee.out.push(t)},_ln=function(t){return __locals.__toffee.lineno=t},_ts=function(t){return __locals.__toffee.state=t},toffee.__augmentLocals(__locals,"/lambda_fns/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),print_it=function(t){return _ts(1),_ts(1),_to(""+(null!=t?escape(t):"")),_ts(2)},print_it_twice=function(t){var _;return _ts(1),_ts(1),_to(""+(null!=t?escape(t):"")),_ts(2),_=t,_ts(1),_ts(1),_to(""+(null!=_?escape(_):"")),_ts(2)},echo_it=function(t){var _;return _=t},print_it("Pass"),print_it_twice("Pass"),print(echo_it("Pass")),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/lambda_fns/output.toffee"]={bundlePath:"/lambda_fns/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/lambda_fns/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("PassPassPassPass"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/multiline_interpolation/foo.toffee"]={bundlePath:"/multiline_interpolation/foo.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/multiline_interpolation/foo.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+("undefined"!=typeof a&&null!==a?escape(a):"")),_to(" "),_to(""+("undefined"!=typeof b&&null!==b?escape(b):"")),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/multiline_interpolation/input.toffee"]={bundlePath:"/multiline_interpolation/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/multiline_interpolation/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+escape("Hello, world")),_to("\n"),_to(" \n"),_to(""+partial("foo.toffee",{a:"Goodbye,",b:"world"})),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/multiline_interpolation/output.toffee"]={bundlePath:"/multiline_interpolation/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/multiline_interpolation/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("Hello, world\n"),_to(" \n"),_to("Goodbye, world"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const1.toffee"]={bundlePath:"/passback/const1.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/const1.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx1",passback.vy="vy1",passback.x="oh shit",passback.y="oh noze",_ts(1),_to("\n"),_to("This should output (1)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const2.toffee"]={bundlePath:"/passback/const2.toffee"},tmpl.render=tmpl.pub=function(__locals){var vx,vy,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/const2.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vz="vz2",vx="Should not set.",vy="Should not set.",_ts(1),_to("\n"),_to("This should not output (2)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const3.toffee"]={bundlePath:"/passback/const3.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/const3.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx3",passback.vy="vy3",_ts(1),_to("\n"),_to("This should not output (3)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const4.toffee"]={bundlePath:"/passback/const4.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/const4.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx4",passback.vy="vy4",partial("./const4_sub.toffee"),_ts(1),_to("\n"),_to("This should not output (4)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const4_sub.toffee"]={bundlePath:"/passback/const4_sub.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/passback/const4_sub.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx4_sub",passback.vy="vy4_sub",_ts(1),_to("\n"),_to("This should not output (4_sub)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const5.toffee"]={bundlePath:"/passback/const5.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/const5.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx5",passback.vy="vy5",print(load("./const5_sub.toffee")),passback.vx=vx,passback.vy=vy,_ts(1),_to("\n"),_to("This should not output (5)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/const5_sub.toffee"]={bundlePath:"/passback/const5_sub.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/passback/const5_sub.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),passback.vx="vx5_sub",passback.vy="vy5_sub",_ts(1),_to("\n"),_to("This should not output (5_sub)."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/input.toffee"]={bundlePath:"/passback/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/passback/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_to("\n"),_to(""+partial("./const1.toffee")),_to("\n"),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_to("\n"),_to(""+load("./const2.toffee")),_to("\n"),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_to("\n"),_to(""+load("./const3.toffee")),_to("\n"),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_to("\n"),_to(""+load("./const4.toffee")),_to("\n"),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_to("\n"),_to(""+load("./const5.toffee")),_to("\n"),_to("vx,vy,vz = "),_to(""+("undefined"!=typeof vx&&null!==vx?escape(vx):"")),_to(","),_to(""+("undefined"!=typeof vy&&null!==vy?escape(vy):"")),_to(","),_to(""+("undefined"!=typeof vz&&null!==vz?escape(vz):"")),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/passback/output.toffee"]={bundlePath:"/passback/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/passback/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("vx,vy,vz = vx0,,\n"),_to("\n"),_to("This should output (1).\n"),_to("vx,vy,vz = vx1,vy1,\n"),_to("\n"),_to("vx,vy,vz = vx1,vy1,vz2\n"),_to("\n"),_to("vx,vy,vz = vx3,vy3,vz2\n"),_to("\n"),_to("vx,vy,vz = vx4,vy4,vz2\n"),_to("\n"),_to("vx,vy,vz = vx5_sub,vy5_sub,vz2"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/plaintext/input.toffee"]={bundlePath:"/plaintext/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/plaintext/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("Hi there."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/plaintext/output.toffee"]={bundlePath:"/plaintext/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/plaintext/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("Hi there."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/post_process/buncha_junk.toffee"]={bundlePath:"/post_process/buncha_junk.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/post_process/buncha_junk.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("T3246h354is345-i3245s345-534a534-h534i543d534d534e534n543-m534e543s543s543ag5e534.543"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/post_process/input.toffee"]={bundlePath:"/post_process/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var clean,reverse,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/post_process/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+("undefined"!=typeof greeting&&null!==greeting?escape(greeting):"")),_to(", world. \n"),_to(""+partial("./signature.toffee")),_to("\n"),_ts(2),_ts(2),reverse=function(e){var t;return function(){var _,o;for(o=[],_=e.length-1;_>=0;_+=-1)t=e[_],o.push(t);return o}().join("")},clean=function(e){var t;return function(){var _,o,n;for(n=[],_=0,o=e.length;o>_;_++)t=e[_],t.match(/[a-z\-]/gi)&&n.push(t);return n}().join("")},_ts(1),_to("\n"),_to(""+partial("./buncha_junk.toffee",{postProcess:function(e){return reverse(clean(e))}})),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/post_process/output.toffee"]={bundlePath:"/post_process/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/post_process/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("This-is-a-hidden-message\n"),_to("\n"),_to(".dlrow leurc ,eybdooG\n"),_to(" .dlrow ,olleH"),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/post_process/signature.toffee"]={bundlePath:"/post_process/signature.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/post_process/signature.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("Goodbye, cruel world."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/render_no_args/input.toffee"]={bundlePath:"/render_no_args/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/render_no_args/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("No arguments passed."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/render_no_args/output.toffee"]={bundlePath:"/render_no_args/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/render_no_args/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("No arguments passed."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/snippets/foo/bar/body.toffee"]={bundlePath:"/snippets/foo/bar/body.toffee"},tmpl.render=tmpl.pub=function(__locals){var msg,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/snippets/foo/bar/body.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),msg=msg||"Unknown message",print(msg),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/snippets/foo/message.toffee"]={bundlePath:"/snippets/foo/message.toffee"},tmpl.render=tmpl.pub=function(__locals){var from,msg,__repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/snippets/foo/message.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(2),from=from||"Unknown sender",msg=msg||"Unknown message.",print("From: "+from+"\n"+snippet("./bar/body.toffee",{msg:msg})),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/snippets/input.toffee"]={bundlePath:"/snippets/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/snippets/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to(""+partial("./foo/message.toffee")),_to("\n"),_to(""+escape(snippet("./foo/message.toffee"))),_to("\n"),_to(""+partial("./foo/message.toffee",{from:"Sam"})),_to("\n"),_to(""+escape(snippet("./foo/message.toffee",{from:"Max"}))),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/snippets/output.toffee"]={bundlePath:"/snippets/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(e){return __locals.__toffee.out.push(e)},_ln=function(e){return __locals.__toffee.lineno=e},_ts=function(e){return __locals.__toffee.state=e},toffee.__augmentLocals(__locals,"/snippets/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("From: Preloaded sender\n"),_to("Preloaded message.\n"),_to("From: Unknown sender\n"),_to("Unknown message.\n"),_to("From: Sam\n"),_to("Preloaded message.\n"),_to("From: Max\n"),_to("Unknown message."),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/special_cases/input.toffee"]={bundlePath:"/special_cases/input.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/special_cases/input.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_ts(2),_ts(2),_ts(1),_ts(1),_to('"PASSED"'),_ts(2),_ts(1),_to("\n"),_ts(2),_ts(1),_to("\n"),_to("\n"),_to(" "),_to(""+print("click & clack ")),_to("\n"),_to("
\n"),_ts(2),_ts(1),_to("\n"),_to("A backslash is a \\\n"),_to(""),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
+;
+(function(){var tmpl;return tmpl=toffee.templates["/special_cases/output.toffee"]={bundlePath:"/special_cases/output.toffee"},tmpl.render=tmpl.pub=function(__locals){var __repress,_ln,_ref,_to,_ts;with(__locals=__locals||{},__repress=null!=(_ref=__locals.__toffee)?_ref.repress:void 0,_to=function(_){return __locals.__toffee.out.push(_)},_ln=function(_){return __locals.__toffee.lineno=_},_ts=function(_){return __locals.__toffee.state=_},toffee.__augmentLocals(__locals,"/special_cases/output.toffee"),__locals)return __toffee.out=[],_ts(1),_ts(1),_to("\n"),_to('"PASSED"\n'),_to("\n"),_to("\n"),_to(" click & clack \n"),_to("
\n"),_to("\n"),_to("A backslash is a \\\n"),_to(""),_ts(2),__toffee.res=__toffee.out.join(""),"undefined"!=typeof postProcess&&null!==postProcess&&(__toffee.res=postProcess(__toffee.res)),__repress?"":__toffee.res},"undefined"!=typeof __toffee_run_input&&null!==__toffee_run_input?tmpl.pub(__toffee_run_input):void 0}).call(this);
\ No newline at end of file
diff --git a/test/express4_error_handling/public/javascripts/toffee.js b/test/express4_error_handling/public/javascripts/toffee.js
new file mode 100644
index 0000000..482625c
--- /dev/null
+++ b/test/express4_error_handling/public/javascripts/toffee.js
@@ -0,0 +1,205 @@
+var toffee;
+
+
+
+if (typeof toffee === "undefined" || toffee === null) {
+ toffee = {};
+}
+
+if (!toffee.templates) {
+ toffee.templates = {};
+}
+
+toffee.states = {
+ "TOFFEE": 1,
+ "COFFEE": 2
+};
+
+toffee.__json = function(locals, o) {
+ if (o == null) {
+ return "null";
+ } else {
+ return "" + JSON.stringify(o).replace(//g, '\\u003E').replace(/&/g, '\\u0026');
+ }
+};
+
+toffee.__raw = function(locals, o) {
+ return o;
+};
+
+toffee.__html = function(locals, o) {
+ return ("" + o).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"');
+};
+
+toffee.__escape = function(locals, o) {
+ var ae;
+ if (locals.__toffee.autoEscape != null) {
+ ae = locals.__toffee.autoEscape;
+ } else if (true) {
+ ae = true;
+ } else {
+ ae = true;
+ }
+ if (ae) {
+ if (o === void 0) {
+ return '';
+ }
+ if ((o != null) && (typeof o) === "object") {
+ return locals.json(o);
+ }
+ return locals.html(o);
+ }
+ return o;
+};
+
+toffee.__augmentLocals = function(locals, bundle_path) {
+ var _l, _t;
+ _l = locals;
+ _t = _l.__toffee = {
+ out: []
+ };
+ if (_l.print == null) {
+ _l.print = function(o) {
+ return toffee.__print(_l, o);
+ };
+ }
+ if (_l.json == null) {
+ _l.json = function(o) {
+ return toffee.__json(_l, o);
+ };
+ }
+ if (_l.raw == null) {
+ _l.raw = function(o) {
+ return toffee.__raw(_l, o);
+ };
+ }
+ if (_l.html == null) {
+ _l.html = function(o) {
+ return toffee.__html(_l, o);
+ };
+ }
+ if (_l.escape == null) {
+ _l.escape = function(o) {
+ return toffee.__escape(_l, o);
+ };
+ }
+ if (_l.partial == null) {
+ _l.partial = function(path, vars) {
+ return toffee.__partial(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.snippet == null) {
+ _l.snippet = function(path, vars) {
+ return toffee.__snippet(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.load == null) {
+ _l.load = function(path, vars) {
+ return toffee.__load(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ _t.print = _l.print;
+ _t.json = _l.json;
+ _t.raw = _l.raw;
+ _t.html = _l.html;
+ _t.escape = _l.escape;
+ _t.partial = _l.partial;
+ _t.snippet = _l.snippet;
+ return _t.load = _l.load;
+};
+
+toffee.__print = function(locals, o) {
+ if (locals.__toffee.state === toffee.states.COFFEE) {
+ locals.__toffee.out.push(o);
+ return '';
+ } else {
+ return "" + o;
+ }
+};
+
+toffee.__normalize = function(path) {
+ var np, part, parts, _i, _len;
+ if ((path == null) || path === "/") {
+ return path;
+ } else {
+ parts = path.split("/");
+ np = [];
+ if (parts[0]) {
+ np.push('');
+ }
+ for (_i = 0, _len = parts.length; _i < _len; _i++) {
+ part = parts[_i];
+ if (part === "..") {
+ if (np.length > 1) {
+ np.pop();
+ } else {
+ np.push(part);
+ }
+ } else {
+ if (part !== ".") {
+ np.push(part);
+ }
+ }
+ }
+ path = np.join("/");
+ if (!path) {
+ path = "/";
+ }
+ return path;
+ }
+};
+
+toffee.__partial = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__snippet = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.noInheritance = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__load = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.repress = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__inlineInclude = function(path, locals, parent_locals) {
+ var k, options, res, reserved, v, _i, _len, _ref, _ref1;
+ options = locals || {};
+ options.passback = {};
+ options.__toffee = options.__toffee || {};
+ reserved = {};
+ _ref = ["passback", "load", "print", "partial", "snippet", "layout", "__toffee", "postProcess"];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ k = _ref[_i];
+ reserved[k] = true;
+ }
+ if (!options.__toffee.noInheritance) {
+ for (k in parent_locals) {
+ v = parent_locals[k];
+ if ((locals != null ? locals[k] : void 0) == null) {
+ if (reserved[k] == null) {
+ options[k] = v;
+ }
+ }
+ }
+ }
+ if (!toffee.templates[path]) {
+ return "Inline toffee include: Could not find " + path;
+ } else {
+ res = toffee.templates[path].pub(options);
+ _ref1 = options.passback;
+ for (k in _ref1) {
+ v = _ref1[k];
+ parent_locals[k] = v;
+ }
+ return res;
+ }
+};
diff --git a/test/express4_error_handling/public/stylesheets/style.css b/test/express4_error_handling/public/stylesheets/style.css
new file mode 100644
index 0000000..30e047d
--- /dev/null
+++ b/test/express4_error_handling/public/stylesheets/style.css
@@ -0,0 +1,8 @@
+body {
+ padding: 50px;
+ font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
+}
+
+a {
+ color: #00B7FF;
+}
\ No newline at end of file
diff --git a/test/express4_error_handling/routes/index.js b/test/express4_error_handling/routes/index.js
new file mode 100644
index 0000000..b609354
--- /dev/null
+++ b/test/express4_error_handling/routes/index.js
@@ -0,0 +1,19 @@
+
+/*
+ * GET home page.
+ */
+
+exports.index = function(req, res){
+ var vars = { }
+ res.render('index.toffee', vars);
+};
+
+/*
+ * individual test cases
+*/
+
+exports.path = function(req, res){
+ var vars = { };
+ vars.path = req.params.path
+ res.render("./" + vars.path + ".toffee", vars);
+};
diff --git a/test/express4_error_handling/views/index.toffee b/test/express4_error_handling/views/index.toffee
new file mode 100644
index 0000000..ee48515
--- /dev/null
+++ b/test/express4_error_handling/views/index.toffee
@@ -0,0 +1,37 @@
+
+
+ Express 3 Test
+
+
+
+ {#
+ ports = [3034, 3035]
+ percent = ~~(100 / (ports.length)) - 2
+ tests = [
+ ["test_bad_str_interpolate", 300]
+ ["test_bad_toffee_syntax", 300]
+ ["test_bad_coffee_syntax", 300]
+ ["test_bad_runtime", 300]
+ ]
+ #}
+
+
+
+ {#
+ for [t,height] in tests
+ {:#{t} :}
+ for p in ports
+ {:
+
+
+
+ :}
+ {: :}
+ #}
+
+
+
\ No newline at end of file
diff --git a/test/express4_error_handling/views/test_bad_coffee_syntax.toffee b/test/express4_error_handling/views/test_bad_coffee_syntax.toffee
new file mode 100644
index 0000000..1df5dd2
--- /dev/null
+++ b/test/express4_error_handling/views/test_bad_coffee_syntax.toffee
@@ -0,0 +1,15 @@
+
+{#
+ x = "Foo"
+#}
+
+{#
+ y = "Bar"
+ {:
+ Hello there
+ {#
+ var x = 100
+ #}
+ :}
+#}
+Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah Bleah bleah bleah Bleah
\ No newline at end of file
diff --git a/test/express4_error_handling/views/test_bad_runtime.toffee b/test/express4_error_handling/views/test_bad_runtime.toffee
new file mode 100644
index 0000000..0a8d912
--- /dev/null
+++ b/test/express4_error_handling/views/test_bad_runtime.toffee
@@ -0,0 +1,13 @@
+
+About to convert a circular JSON structure
+
+{#
+ x = [1,2,3]
+ x.push x
+ {:
+ x as JSON
+ {#
+ print JSON.stringify x
+ #}
+ :}
+#}
diff --git a/test/express4_error_handling/views/test_bad_str_interpolate.toffee b/test/express4_error_handling/views/test_bad_str_interpolate.toffee
new file mode 100644
index 0000000..d0e946d
--- /dev/null
+++ b/test/express4_error_handling/views/test_bad_str_interpolate.toffee
@@ -0,0 +1,6 @@
+
+This is a bad variable.
+
+foo.bar = #{foo.bar}
+
+Hah.
\ No newline at end of file
diff --git a/test/express4_error_handling/views/test_bad_toffee_syntax.toffee b/test/express4_error_handling/views/test_bad_toffee_syntax.toffee
new file mode 100644
index 0000000..d5dff31
--- /dev/null
+++ b/test/express4_error_handling/views/test_bad_toffee_syntax.toffee
@@ -0,0 +1,10 @@
+
+{#
+ x = "Foo"
+#}
+
+{#
+ {: :}
+ y = "Bar"
+ {:
+#}
diff --git a/test/generate_express_test.coffee b/test/generate_express_test.coffee
new file mode 100644
index 0000000..d62dbae
--- /dev/null
+++ b/test/generate_express_test.coffee
@@ -0,0 +1,96 @@
+{spawn, exec} = require 'child_process'
+fs = require 'fs'
+path = require 'path'
+coffee = require 'coffee-script'
+
+
+generateExpressTest = (cb) ->
+
+ proc = spawn path.join(__dirname,"../node_modules/.bin/coffee"), ['./src/command_line.coffee', '-n', './test/cases', '-o', './test/express4/public/javascripts/test_cases.js']
+ proc.stderr.on 'data', (buffer) -> console.log buffer.toString()
+ proc.stdout.on 'data', (buffer) -> console.log buffer.toString()
+ proc.on 'exit', (status) ->
+ if status isnt 0
+ console.log "Error running command line. #{status}"
+ process.exit 1
+ cb() if typeof cb is 'function'
+
+ {getCommonHeadersJs} = require '../lib/view'
+ headers = getCommonHeadersJs true, true
+ fs.writeFileSync "./test/express4/public/javascripts/toffee.js", headers, "utf8"
+
+ # generate an index page that tests them all
+
+ test_page = """
+
+
+ Testing Toffee in the Browser
+
+
+
+
+
+
+
+
+ FILE EXPECTED OUTPUT SERVER RENDER BROWSER RENDER
+ """
+
+ case_dirs = fs.readdirSync "./test/cases/"
+
+ for dir,i in case_dirs
+ expected_output = fs.readFileSync "./test/cases/#{dir}/output.toffee", "utf8"
+ if fs.existsSync "./test/cases/#{dir}/vars.coffee"
+ coffee_vars = fs.readFileSync "./test/cases/#{dir}/vars.coffee", "utf8"
+ js_vars = coffee.compile(coffee_vars, {bare: true}).replace(/;[ \n]*$/,'')
+ else if fs.existsSync "./test/cases/#{dir}/vars.js"
+ coffee_vars = fs.readFileSync "./test/cases/#{dir}/vars.js", "utf8"
+ js_vars = coffee_vars;
+ else
+ if dir == "render_no_args"
+ coffee_vars = ""
+ js_vars = ""
+ else
+ coffee_vars = "{}"
+ js_vars = "{}"
+ rid = i
+ test_page += """
+ \n\n\n
+
+ #{dir}
+ #{expected_output}
+ \#{partial '../../cases/#{dir}/input.toffee', #{coffee_vars}}
+
+
+
+ \n\n\n
+ """
+
+ test_page += """
+
+
+
+ """
+ fs.writeFileSync "./test/express4/views/index.toffee", test_page, "utf8"
+
+exports.generate = generateExpressTest
+
diff --git a/test/run_cases.coffee b/test/run_cases.coffee
deleted file mode 100644
index 9b6a520..0000000
--- a/test/run_cases.coffee
+++ /dev/null
@@ -1,60 +0,0 @@
-{engine} = require '../lib/engine'
-fs = require 'fs'
-path = require 'path'
-
-e = new engine({
- verbose: false
- prettyPrintErrors: false
-})
-
-run_case_dir = (dir, cb) ->
- expected = fs.readFileSync "#{dir}/output.toffee", "utf8"
- if path.existsSync "#{dir}/vars.js"
- vars = fs.readFileSync "#{dir}/vars.js", "utf8"
- vars = eval "(#{vars})"
- else
- vars = {}
- d = Date.now()
- e.run "#{dir}/input.toffee", vars, (err, res) ->
- time_ms = Date.now() - d
- if err
- cb err, time_ms
- else
- if res isnt expected
- cb "Failure in case #{dir}." +
- "\n\nExpected\n=====\n#{expected}\n=====" +
- "\nGot\n=====\n#{res}\n=====\n", time_ms
- else
- cb null, time_ms
-
-run_all_case_dirs = (cb) ->
- time_ms = 0
- case_dirs = fs.readdirSync "#{__dirname}/cases/"
- countdown = case_dirs.length
- for dir in case_dirs
- run_case_dir "#{__dirname}/cases/#{dir}", (err, ms) ->
- countdown--
- time_ms += ms
- if err
- console.log err
- process.exit 1
- if countdown is 0
- cb null, time_ms, case_dirs.length
-
-run_all_case_dirs (err, time, tests_run) ->
-
- console.log "SUCCESS for #{tests_run} cold tests in #{time}ms"
-
- times = []
- speed_runs = 20
- countdown = speed_runs
- total_time = 0
- total_tests = 0
- for i in [0...speed_runs]
- run_all_case_dirs (err, time, tests_run) ->
- countdown--
- total_time += time
- total_tests += tests_run
- if countdown is 0
- console.log "SUCCESS for #{total_tests} hot tests in #{total_time}ms. #{total_time / total_tests}ms/test"
- process.exit 0
\ No newline at end of file
diff --git a/test/run_cases.iced b/test/run_cases.iced
new file mode 100644
index 0000000..a64ec0e
--- /dev/null
+++ b/test/run_cases.iced
@@ -0,0 +1,106 @@
+{engine} = require '../lib/engine'
+fs = require 'fs'
+path = require 'path'
+Browser = require 'zombie'
+coffee = require 'coffee-script'
+tablify = require 'tablify'
+colors = require 'colors'
+jsdiff = require 'diff'
+
+regular_engine = new engine({
+ verbose: false
+ prettyPrintErrors: false
+})
+
+# ---------------------------------------------------------------
+
+MULTI_RUNS = 50
+
+file_cache = {}
+
+# ---------------------------------------------------------------
+
+read_file_sync = (fname) ->
+ if not file_cache[fname]?
+ file_cache[fname] = fs.readFileSync fname, "utf8"
+ return file_cache[fname]
+
+# ---------------------------------------------------------------
+
+run_case_dir = (eng, dir, cb) ->
+ start = Date.now()
+ expected = read_file_sync "#{dir}/output.toffee"
+ existsSync = if path.existsSync? then path.existsSync else fs.existsSync
+ if existsSync "#{dir}/vars.coffee"
+ txt = read_file_sync "#{dir}/vars.coffee"
+ vars = coffee.compile(txt, {bare: true})
+ vars = eval "#{vars}"
+ else if existsSync "#{dir}/vars.js"
+ vars = read_file_sync "#{dir}/vars.js"
+ vars = eval "(#{vars})"
+ else
+ vars = {}
+ vars["rand_#{Math.random()}"] = ("foo" for i in [0...(~~(20000*Math.random()))]).join ""
+ await eng.run "#{dir}/input.toffee", vars, defer err, res
+ time_ms = Date.now() - start
+ if err
+ cb err, time_ms
+ else
+ if res isnt expected
+ diff = jsdiff.diffLines res, expected
+ delta = ""
+ diff.forEach (part) ->
+ c = if part.added then 'green' else if part.removed then 'red' else 'grey'
+ v = part.value
+ delta += v[c]
+ cb "Failure in case #{dir}." +
+ "#{delta}", time_ms
+ else
+ cb null, time_ms
+
+run_all_case_dirs = (eng, cb) ->
+ start = Date.now()
+ case_dirs = fs.readdirSync "#{__dirname}/cases/"
+ for dir in case_dirs
+ await run_case_dir eng, "#{__dirname}/cases/#{dir}", defer err, ms
+ if err
+ console.log err
+ process.exit 1
+ cb null, (Date.now() - start), case_dirs.length
+
+run_multiple_runs = (eng, num_runs, cb) ->
+ total_tests = 0
+ start = Date.now()
+ for i in [0...num_runs]
+ await setTimeout defer(), 1
+ await run_all_case_dirs regular_engine, defer err, time, tests_run
+ total_tests += tests_run
+ cb null, (Date.now() - start), total_tests
+
+run_express_test = (cb) ->
+ require('./express4/app').run ->
+ browser = new Browser()
+ browser.visit 'http://127.0.0.1:3033', (e) ->
+ if e
+ console.log e
+ $ = browser.window.$
+ successes = $('.success').length
+ fails = $('.fail').length
+ if (fails is 0) and (successes > 0)
+ console.log "Express SUCCESS: #{successes} succeeded, #{fails} failed"
+ return cb()
+ console.log "BROWSER ERROR! Server left running at http://localhost:3033 for your convenience"
+
+# ----------------------------------------------------------------
+go = ->
+ await run_all_case_dirs regular_engine, defer err, time, tests_run
+ console.log "Regular Engine: SUCCESS for #{tests_run} cold tests in #{time}ms (#{(time/tests_run).toFixed 2}ms/test)"
+ await run_multiple_runs regular_engine, MULTI_RUNS, defer err, time, tests_run
+ console.log "Regular Engine: SUCCESS for #{tests_run} hot tests in #{time}ms (#{(time/tests_run).toFixed 2}ms/test)"
+ await run_express_test defer()
+ process.exit 0
+
+if not module.parent?
+ go()
+
+else exports.test = go
diff --git a/toffee.js b/toffee.js
new file mode 100644
index 0000000..5d6b01c
--- /dev/null
+++ b/toffee.js
@@ -0,0 +1,205 @@
+var toffee;
+
+if (typeof toffee === "undefined" || toffee === null) {
+ toffee = {};
+}
+
+if (!toffee.templates) {
+ toffee.templates = {};
+}
+
+toffee.states = {
+ "TOFFEE": 1,
+ "COFFEE": 2
+};
+
+toffee.__json = function(locals, o, opts) {
+ opts || (opts = {});
+ opts.indent || (opts.indent = "");
+ if (o == null) {
+ return "null";
+ } else {
+ return "" + JSON.stringify(o, null, opts.indent).replace(//g, '\\u003E').replace(/&/g, '\\u0026').replace(/\u2028/g, '\\u2028').replace(/\u2029/g, '\\u2029').replace(/\u200e/g, '\\u200e').replace(/\u200f/g, '\\u200f').replace(/\u202a/g, '\\u202a').replace(/\u202b/g, '\\u202b').replace(/\u202c/g, '\\u202c').replace(/\u202d/g, '\\u202d').replace(/\u202e/g, '\\u202e').replace(/\u206a/g, '\\u206a').replace(/\u206b/g, '\\u206b').replace(/\u206c/g, '\\u206c').replace(/\u206d/g, '\\u206d').replace(/\u206e/g, '\\u206e').replace(/\u206f/g, '\\u206f').replace(/\u2066/g, '\\u2066').replace(/\u2067/g, '\\u2067').replace(/\u2068/g, '\\u2068').replace(/\u2069/g, '\\u2069');
+ }
+};
+
+toffee.__raw = function(locals, o) {
+ return o;
+};
+
+toffee.__html = function(locals, o) {
+ return ("" + o).replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"').replace(/\u200e/g, '').replace(/\u200f/g, '').replace(/\u202a/g, '').replace(/\u202b/g, '').replace(/\u202c/g, '').replace(/\u202d/g, '').replace(/\u202e/g, '').replace(/\u206a/g, '').replace(/\u206b/g, '').replace(/\u206c/g, '').replace(/\u206d/g, '').replace(/\u206e/g, '').replace(/\u206f/g, '').replace(/\u2066/g, '').replace(/\u2067/g, '').replace(/\u2068/g, '').replace(/\u2069/g, '');
+};
+
+toffee.__escape = function(locals, o) {
+ var ae;
+ if (locals.__toffee.autoEscape != null) {
+ ae = locals.__toffee.autoEscape;
+ } else if (true) {
+ ae = true;
+ } else {
+ ae = true;
+ }
+ if (ae) {
+ if (o === void 0) {
+ return '';
+ }
+ if ((o != null) && (typeof o) === "object") {
+ return locals.json(o);
+ }
+ return locals.html(o);
+ }
+ return o;
+};
+
+toffee.__augmentLocals = function(locals, bundle_path) {
+ var _l, _t;
+ _l = locals;
+ _t = _l.__toffee = {
+ out: []
+ };
+ if (_l.print == null) {
+ _l.print = function(o) {
+ return toffee.__print(_l, o);
+ };
+ }
+ if (_l.json == null) {
+ _l.json = function(o, opts) {
+ return toffee.__json(_l, o, opts);
+ };
+ }
+ if (_l.raw == null) {
+ _l.raw = function(o) {
+ return toffee.__raw(_l, o);
+ };
+ }
+ if (_l.html == null) {
+ _l.html = function(o) {
+ return toffee.__html(_l, o);
+ };
+ }
+ if (_l.escape == null) {
+ _l.escape = function(o) {
+ return toffee.__escape(_l, o);
+ };
+ }
+ if (_l.partial == null) {
+ _l.partial = function(path, vars) {
+ return toffee.__partial(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.snippet == null) {
+ _l.snippet = function(path, vars) {
+ return toffee.__snippet(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ if (_l.load == null) {
+ _l.load = function(path, vars) {
+ return toffee.__load(toffee.templates["" + bundle_path], _l, path, vars);
+ };
+ }
+ _t.print = _l.print;
+ _t.json = _l.json;
+ _t.raw = _l.raw;
+ _t.html = _l.html;
+ _t.escape = _l.escape;
+ _t.partial = _l.partial;
+ _t.snippet = _l.snippet;
+ return _t.load = _l.load;
+};
+
+toffee.__print = function(locals, o) {
+ if (locals.__toffee.state === toffee.states.COFFEE) {
+ locals.__toffee.out.push(o);
+ return '';
+ } else {
+ return "" + o;
+ }
+};
+
+toffee.__normalize = function(path) {
+ var np, part, parts, _i, _len;
+ if ((path == null) || path === "/") {
+ return path;
+ } else {
+ parts = path.split("/");
+ np = [];
+ if (parts[0]) {
+ np.push('');
+ }
+ for (_i = 0, _len = parts.length; _i < _len; _i++) {
+ part = parts[_i];
+ if (part === "..") {
+ if (np.length > 1) {
+ np.pop();
+ } else {
+ np.push(part);
+ }
+ } else {
+ if (part !== ".") {
+ np.push(part);
+ }
+ }
+ }
+ path = np.join("/");
+ if (!path) {
+ path = "/";
+ }
+ return path;
+ }
+};
+
+toffee.__partial = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__snippet = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.noInheritance = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__load = function(parent_tmpl, parent_locals, path, vars) {
+ path = toffee.__normalize(parent_tmpl.bundlePath + "/../" + path);
+ vars = vars != null ? vars : {};
+ vars.__toffee = vars.__toffee || {};
+ vars.__toffee.repress = true;
+ return toffee.__inlineInclude(path, vars, parent_locals);
+};
+
+toffee.__inlineInclude = function(path, locals, parent_locals) {
+ var k, options, res, reserved, v, _i, _len, _ref, _ref1;
+ options = locals || {};
+ options.passback = {};
+ options.__toffee = options.__toffee || {};
+ reserved = {};
+ _ref = ["passback", "load", "print", "partial", "snippet", "layout", "__toffee", "postProcess"];
+ for (_i = 0, _len = _ref.length; _i < _len; _i++) {
+ k = _ref[_i];
+ reserved[k] = true;
+ }
+ if (!options.__toffee.noInheritance) {
+ for (k in parent_locals) {
+ v = parent_locals[k];
+ if ((locals != null ? locals[k] : void 0) == null) {
+ if (reserved[k] == null) {
+ options[k] = v;
+ }
+ }
+ }
+ }
+ if (!toffee.templates[path]) {
+ return "Inline toffee include: Could not find " + path;
+ } else {
+ res = toffee.templates[path].pub(options);
+ _ref1 = options.passback;
+ for (k in _ref1) {
+ v = _ref1[k];
+ parent_locals[k] = v;
+ }
+ return res;
+ }
+};
diff --git a/yarn.lock b/yarn.lock
new file mode 100644
index 0000000..2829e32
--- /dev/null
+++ b/yarn.lock
@@ -0,0 +1,1423 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+JSONSelect@0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/JSONSelect/-/JSONSelect-0.4.0.tgz#a08edcc67eb3fcbe99ed630855344a0cf282bb8d"
+ integrity sha512-VRLR3Su35MH+XV2lrvh9O7qWoug/TUyj9tLDjn9rtpUCNnILLrHjgd/tB0KrhugCxUpj3UqoLqfYb3fLJdIQQQ==
+
+"JSV@>= 4.0.x":
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/JSV/-/JSV-4.0.2.tgz#d077f6825571f82132f9dffaed587b4029feff57"
+ integrity sha512-ZJ6wx9xaKJ3yFUhq5/sk82PJMuUyLk277I8mQeyDgCTjGdjWJIvPfaU5LIXaMuaN2UO1X3kZH4+lgphublZUHw==
+
+abab@^2.0.0:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291"
+ integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==
+
+accepts@~1.3.8:
+ version "1.3.8"
+ resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
+ integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
+ dependencies:
+ mime-types "~2.1.34"
+ negotiator "0.6.3"
+
+acorn-globals@^4.1.0:
+ version "4.3.4"
+ resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.4.tgz#9fa1926addc11c97308c4e66d7add0d40c3272e7"
+ integrity sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==
+ dependencies:
+ acorn "^6.0.1"
+ acorn-walk "^6.0.1"
+
+acorn-walk@^6.0.1:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c"
+ integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==
+
+acorn@^5.5.3:
+ version "5.7.4"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.7.4.tgz#3e8d8a9947d0599a1796d10225d7432f4a4acf5e"
+ integrity sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==
+
+acorn@^6.0.1:
+ version "6.4.2"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6"
+ integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==
+
+ajv@^6.12.3:
+ version "6.12.6"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
+ integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
+ dependencies:
+ fast-deep-equal "^3.1.1"
+ fast-json-stable-stringify "^2.0.0"
+ json-schema-traverse "^0.4.1"
+ uri-js "^4.2.2"
+
+amdefine@>=0.0.4:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
+ integrity sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==
+
+ansi-styles@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178"
+ integrity sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==
+
+array-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
+ integrity sha512-H3LU5RLiSsGXPhN+Nipar0iR0IofH+8r89G2y1tBKxQ/agagKyAjhkAFDRBfodP2caPrNKHpAWNIM/c9yeL7uA==
+
+array-flatten@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
+ integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
+
+asn1@~0.2.3:
+ version "0.2.6"
+ resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d"
+ integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==
+ dependencies:
+ safer-buffer "~2.1.0"
+
+assert-plus@1.0.0, assert-plus@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
+ integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==
+
+assert@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/assert/-/assert-2.0.0.tgz#95fc1c616d48713510680f2eaf2d10dd22e02d32"
+ integrity sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==
+ dependencies:
+ es6-object-assign "^1.1.0"
+ is-nan "^1.2.1"
+ object-is "^1.0.1"
+ util "^0.12.0"
+
+async-limiter@~1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
+ integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
+
+asynckit@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
+ integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
+
+available-typed-arrays@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7"
+ integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==
+
+aws-sign2@~0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
+ integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==
+
+aws4@^1.8.0:
+ version "1.12.0"
+ resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3"
+ integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==
+
+babel-runtime@6.26.0:
+ version "6.26.0"
+ resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe"
+ integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==
+ dependencies:
+ core-js "^2.4.0"
+ regenerator-runtime "^0.11.0"
+
+bcrypt-pbkdf@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
+ integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==
+ dependencies:
+ tweetnacl "^0.14.3"
+
+bluebird@^3.5.1:
+ version "3.7.2"
+ resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
+ integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==
+
+body-parser@1.20.1:
+ version "1.20.1"
+ resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"
+ integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==
+ dependencies:
+ bytes "3.1.2"
+ content-type "~1.0.4"
+ debug "2.6.9"
+ depd "2.0.0"
+ destroy "1.2.0"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ on-finished "2.4.1"
+ qs "6.11.0"
+ raw-body "2.5.1"
+ type-is "~1.6.18"
+ unpipe "1.0.0"
+
+browser-process-hrtime@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626"
+ integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==
+
+bytes@3.1.2:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
+ integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
+
+call-bind@^1.0.0, call-bind@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
+ integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
+ dependencies:
+ function-bind "^1.1.1"
+ get-intrinsic "^1.0.2"
+
+caseless@~0.12.0:
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
+ integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==
+
+chalk@~0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f"
+ integrity sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==
+ dependencies:
+ ansi-styles "~1.0.0"
+ has-color "~0.1.0"
+ strip-ansi "~0.1.0"
+
+cjson@0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/cjson/-/cjson-0.3.0.tgz#e6439b90703d312ff6e2224097bea92ce3d02a14"
+ integrity sha512-bBRQcCIHzI1IVH59fR0bwGrFmi3Btb/JNwM/n401i1DnYgWndpsUBiQRAddLflkZage20A2d25OAWZZk0vBRlA==
+ dependencies:
+ jsonlint "1.6.0"
+
+coffee-script@1.12.7:
+ version "1.12.7"
+ resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.12.7.tgz#c05dae0cb79591d05b3070a8433a98c9a89ccc53"
+ integrity sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==
+
+colors@0.5.x:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774"
+ integrity sha512-XjsuUwpDeY98+yz959OlUK6m7mLBM+1MEG5oaenfuQnNnrQk1WvtcvFgN3FNDP3f2NmZ211t0mNEfSEN1h0eIg==
+
+colors@1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78"
+ integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==
+
+combined-stream@^1.0.6, combined-stream@~1.0.6:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
+ integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
+ dependencies:
+ delayed-stream "~1.0.0"
+
+commander@10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.0.tgz#71797971162cd3cf65f0b9d24eb28f8d303acdf1"
+ integrity sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==
+
+content-disposition@0.5.4:
+ version "0.5.4"
+ resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
+ integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
+ dependencies:
+ safe-buffer "5.2.1"
+
+content-type@~1.0.4:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
+ integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
+
+cookie-signature@1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
+ integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==
+
+cookie@0.5.0:
+ version "0.5.0"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b"
+ integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==
+
+core-js@^2.4.0:
+ version "2.6.12"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec"
+ integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==
+
+core-util-is@1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
+ integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==
+
+cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
+ version "0.3.8"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a"
+ integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==
+
+cssstyle@^1.0.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-1.4.0.tgz#9d31328229d3c565c61e586b02041a28fccdccf1"
+ integrity sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==
+ dependencies:
+ cssom "0.3.x"
+
+dashdash@^1.12.0:
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
+ integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==
+ dependencies:
+ assert-plus "^1.0.0"
+
+data-urls@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe"
+ integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==
+ dependencies:
+ abab "^2.0.0"
+ whatwg-mimetype "^2.2.0"
+ whatwg-url "^7.0.0"
+
+debug@2.6.9:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+ integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+ dependencies:
+ ms "2.0.0"
+
+debug@^4.1.0:
+ version "4.3.4"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
+ integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
+ dependencies:
+ ms "2.1.2"
+
+deep-is@~0.1.3:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
+ integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
+
+define-properties@^1.1.3:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.4.tgz#0b14d7bd7fbeb2f3572c3a7eda80ea5d57fb05b1"
+ integrity sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==
+ dependencies:
+ has-property-descriptors "^1.0.0"
+ object-keys "^1.1.1"
+
+delayed-stream@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
+ integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
+
+depd@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
+ integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
+
+destroy@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
+ integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
+
+diff@5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40"
+ integrity sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==
+
+domexception@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90"
+ integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==
+ dependencies:
+ webidl-conversions "^4.0.2"
+
+ebnf-parser@0.1.10:
+ version "0.1.10"
+ resolved "https://registry.yarnpkg.com/ebnf-parser/-/ebnf-parser-0.1.10.tgz#cd1f6ba477c5638c40c97ed9b572db5bab5d8331"
+ integrity sha512-urvSxVQ6XJcoTpc+/x2pWhhuOX4aljCNQpwzw+ifZvV1andZkAmiJc3Rq1oGEAQmcjiLceyMXOy1l8ms8qs2fQ==
+
+ecc-jsbn@~0.1.1:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
+ integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==
+ dependencies:
+ jsbn "~0.1.0"
+ safer-buffer "^2.1.0"
+
+ee-first@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
+ integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
+
+encodeurl@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
+ integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
+
+es6-object-assign@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/es6-object-assign/-/es6-object-assign-1.1.0.tgz#c2c3582656247c39ea107cb1e6652b6f9f24523c"
+ integrity sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==
+
+escape-html@~1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
+ integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
+
+escodegen@1.3.x:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.3.3.tgz#f024016f5a88e046fd12005055e939802e6c5f23"
+ integrity sha512-z9FWgKc48wjMlpzF5ymKS1AF8OIgnKLp9VyN7KbdtyrP/9lndwUFqCtMm+TAJmJf7KJFFYc4cFJfVTTGkKEwsA==
+ dependencies:
+ esprima "~1.1.1"
+ estraverse "~1.5.0"
+ esutils "~1.0.0"
+ optionalDependencies:
+ source-map "~0.1.33"
+
+escodegen@^1.9.1:
+ version "1.14.3"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503"
+ integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==
+ dependencies:
+ esprima "^4.0.1"
+ estraverse "^4.2.0"
+ esutils "^2.0.2"
+ optionator "^0.8.1"
+ optionalDependencies:
+ source-map "~0.6.1"
+
+esprima@1.1.x, esprima@~1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.1.1.tgz#5b6f1547f4d102e670e140c509be6771d6aeb549"
+ integrity sha512-qxxB994/7NtERxgXdFgLHIs9M6bhLXc6qtUmWZ3L8+gTQ9qaoyki2887P2IqAYsoENyr8SUbTutStDniOHSDHg==
+
+esprima@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
+ integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
+
+estraverse@^4.2.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
+ integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
+
+estraverse@~1.5.0:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71"
+ integrity sha512-FpCjJDfmo3vsc/1zKSeqR5k42tcIhxFIlvq+h9j0fO2q/h2uLKyweq7rYJ+0CoVvrGQOxIS5wyBrW/+vF58BUQ==
+
+esutils@^2.0.2:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
+ integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
+
+esutils@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570"
+ integrity sha512-x/iYH53X3quDwfHRz4y8rn4XcEwwCJeWsul9pF1zldMbGtgOtMNBEOuYWwB1EQlK2LRa1fev3YAgym/RElp5Cg==
+
+etag@~1.8.1:
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
+ integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
+
+eventsource@^1.0.5:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-1.1.2.tgz#bc75ae1c60209e7cb1541231980460343eaea7c2"
+ integrity sha512-xAH3zWhgO2/3KIniEKYPr8plNSzlGINOUqYj0m0u7AB81iRw8b/3E73W6AuU+6klLbaSFmZnaETQ2lXPfAydrA==
+
+express@4.18.2:
+ version "4.18.2"
+ resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59"
+ integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==
+ dependencies:
+ accepts "~1.3.8"
+ array-flatten "1.1.1"
+ body-parser "1.20.1"
+ content-disposition "0.5.4"
+ content-type "~1.0.4"
+ cookie "0.5.0"
+ cookie-signature "1.0.6"
+ debug "2.6.9"
+ depd "2.0.0"
+ encodeurl "~1.0.2"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ finalhandler "1.2.0"
+ fresh "0.5.2"
+ http-errors "2.0.0"
+ merge-descriptors "1.0.1"
+ methods "~1.1.2"
+ on-finished "2.4.1"
+ parseurl "~1.3.3"
+ path-to-regexp "0.1.7"
+ proxy-addr "~2.0.7"
+ qs "6.11.0"
+ range-parser "~1.2.1"
+ safe-buffer "5.2.1"
+ send "0.18.0"
+ serve-static "1.15.0"
+ setprototypeof "1.2.0"
+ statuses "2.0.1"
+ type-is "~1.6.18"
+ utils-merge "1.0.1"
+ vary "~1.1.2"
+
+extend@~3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
+ integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
+
+extsprintf@1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
+ integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==
+
+extsprintf@^1.2.0:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07"
+ integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==
+
+fast-deep-equal@^3.1.1:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+ integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
+
+fast-json-stable-stringify@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+ integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
+
+fast-levenshtein@~2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
+ integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
+
+finalhandler@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.2.0.tgz#7d23fe5731b207b4640e4fcd00aec1f9207a7b32"
+ integrity sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==
+ dependencies:
+ debug "2.6.9"
+ encodeurl "~1.0.2"
+ escape-html "~1.0.3"
+ on-finished "2.4.1"
+ parseurl "~1.3.3"
+ statuses "2.0.1"
+ unpipe "~1.0.0"
+
+for-each@^0.3.3:
+ version "0.3.3"
+ resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e"
+ integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==
+ dependencies:
+ is-callable "^1.1.3"
+
+forever-agent@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
+ integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==
+
+form-data@~2.3.2:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
+ integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
+ dependencies:
+ asynckit "^0.4.0"
+ combined-stream "^1.0.6"
+ mime-types "^2.1.12"
+
+forwarded@0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"
+ integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==
+
+fresh@0.5.2:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
+ integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
+
+function-bind@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+ integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
+
+get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f"
+ integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==
+ dependencies:
+ function-bind "^1.1.1"
+ has "^1.0.3"
+ has-symbols "^1.0.3"
+
+getpass@^0.1.1:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
+ integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==
+ dependencies:
+ assert-plus "^1.0.0"
+
+gopd@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c"
+ integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
+ dependencies:
+ get-intrinsic "^1.1.3"
+
+har-schema@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
+ integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==
+
+har-validator@~5.1.3:
+ version "5.1.5"
+ resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd"
+ integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==
+ dependencies:
+ ajv "^6.12.3"
+ har-schema "^2.0.0"
+
+has-color@~0.1.0:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f"
+ integrity sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==
+
+has-property-descriptors@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz#610708600606d36961ed04c196193b6a607fa861"
+ integrity sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==
+ dependencies:
+ get-intrinsic "^1.1.1"
+
+has-symbols@^1.0.2, has-symbols@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
+ integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
+
+has-tostringtag@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25"
+ integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
+ dependencies:
+ has-symbols "^1.0.2"
+
+has@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
+ integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
+ dependencies:
+ function-bind "^1.1.1"
+
+highlight.js@11.7.0:
+ version "11.7.0"
+ resolved "https://registry.yarnpkg.com/highlight.js/-/highlight.js-11.7.0.tgz#3ff0165bc843f8c9bce1fd89e2fda9143d24b11e"
+ integrity sha512-1rRqesRFhMO/PRF+G86evnyJkCgaZFOI+Z6kdj15TA18funfoqJXvgPCLSf0SWq3SRfg1j3HlDs8o4s3EGq1oQ==
+
+html-encoding-sniffer@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8"
+ integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==
+ dependencies:
+ whatwg-encoding "^1.0.1"
+
+http-errors@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
+ integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==
+ dependencies:
+ depd "2.0.0"
+ inherits "2.0.4"
+ setprototypeof "1.2.0"
+ statuses "2.0.1"
+ toidentifier "1.0.1"
+
+http-signature@~1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
+ integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==
+ dependencies:
+ assert-plus "^1.0.0"
+ jsprim "^1.2.2"
+ sshpk "^1.7.0"
+
+iced-coffee-script@108.0.14:
+ version "108.0.14"
+ resolved "https://registry.yarnpkg.com/iced-coffee-script/-/iced-coffee-script-108.0.14.tgz#9ca5b258decf4a5eafb16f5663ff7683227c4f1a"
+ integrity sha512-e0CNmz51UGWRa2glPnUMnJM7oKQE81cxeC0WAgCjJDRImv3FDHldZr/Ngkbrgdbf1drGGzYWp+PWeJwXIfHwDw==
+ dependencies:
+ iced-runtime ">=0.0.1"
+ uglify-js "^3.5.9"
+
+iced-lock@2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/iced-lock/-/iced-lock-2.0.1.tgz#92fe46ffe01b872bf88f963c2a319fa8ad80d13b"
+ integrity sha512-J6dnGMpAoHNyACUYJYhiJkLY7YFRTa7NMZ8ZygpYB3HNDOGWtzv55+kT2u1zItRi4Y1EXruG9d1VDsx8R5faTw==
+ dependencies:
+ iced-runtime "^1.0.0"
+
+iced-runtime@>=0.0.1, iced-runtime@^1.0.0:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/iced-runtime/-/iced-runtime-1.0.4.tgz#e9de26dfe98cd8621201f7f3dfb9f7f09c550990"
+ integrity sha512-rgiJXNF6ZgF2Clh/TKUlBDW3q51YPDJUXmxGQXx1b8tbZpVpTn+1RX9q1sjNkujXIIaVxZByQzPHHORg7KV51g==
+
+iconv-lite@0.4.24, iconv-lite@^0.4.21:
+ version "0.4.24"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
+ integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
+ dependencies:
+ safer-buffer ">= 2.1.2 < 3"
+
+inherits@2.0.4, inherits@^2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+ integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+ipaddr.js@1.9.1:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
+ integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
+
+is-arguments@^1.0.4:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b"
+ integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==
+ dependencies:
+ call-bind "^1.0.2"
+ has-tostringtag "^1.0.0"
+
+is-callable@^1.1.3:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055"
+ integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==
+
+is-generator-function@^1.0.7:
+ version "1.0.10"
+ resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72"
+ integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==
+ dependencies:
+ has-tostringtag "^1.0.0"
+
+is-nan@^1.2.1:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/is-nan/-/is-nan-1.3.2.tgz#043a54adea31748b55b6cd4e09aadafa69bd9e1d"
+ integrity sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==
+ dependencies:
+ call-bind "^1.0.0"
+ define-properties "^1.1.3"
+
+is-typed-array@^1.1.10, is-typed-array@^1.1.3:
+ version "1.1.10"
+ resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f"
+ integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==
+ dependencies:
+ available-typed-arrays "^1.0.5"
+ call-bind "^1.0.2"
+ for-each "^0.3.3"
+ gopd "^1.0.1"
+ has-tostringtag "^1.0.0"
+
+is-typedarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+ integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==
+
+isstream@~0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
+ integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==
+
+jison-lex@0.3.x:
+ version "0.3.4"
+ resolved "https://registry.yarnpkg.com/jison-lex/-/jison-lex-0.3.4.tgz#81ca28d84f84499dfa8c594dcde3d8a3f26ec7a5"
+ integrity sha512-EBh5wrXhls1cUwROd5DcDHR1sG7CdsCFSqY1027+YA1RGxz+BX2TDLAhdsQf40YEtFDGoiO0Qm8PpnBl2EzDJw==
+ dependencies:
+ lex-parser "0.1.x"
+ nomnom "1.5.2"
+
+jison@0.4.18:
+ version "0.4.18"
+ resolved "https://registry.yarnpkg.com/jison/-/jison-0.4.18.tgz#c68a6a54bfe7028fa40bcfc6cc8bbd9ed291f502"
+ integrity sha512-FKkCiJvozgC7VTHhMJ00a0/IApSxhlGsFIshLW6trWJ8ONX2TQJBBz6DlcO1Gffy4w9LT+uL+PA+CVnUSJMF7w==
+ dependencies:
+ JSONSelect "0.4.0"
+ cjson "0.3.0"
+ ebnf-parser "0.1.10"
+ escodegen "1.3.x"
+ esprima "1.1.x"
+ jison-lex "0.3.x"
+ lex-parser "~0.1.3"
+ nomnom "1.5.2"
+
+jsbn@~0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
+ integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==
+
+jsdom@11.12.0:
+ version "11.12.0"
+ resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.12.0.tgz#1a80d40ddd378a1de59656e9e6dc5a3ba8657bc8"
+ integrity sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==
+ dependencies:
+ abab "^2.0.0"
+ acorn "^5.5.3"
+ acorn-globals "^4.1.0"
+ array-equal "^1.0.0"
+ cssom ">= 0.3.2 < 0.4.0"
+ cssstyle "^1.0.0"
+ data-urls "^1.0.0"
+ domexception "^1.0.1"
+ escodegen "^1.9.1"
+ html-encoding-sniffer "^1.0.2"
+ left-pad "^1.3.0"
+ nwsapi "^2.0.7"
+ parse5 "4.0.0"
+ pn "^1.1.0"
+ request "^2.87.0"
+ request-promise-native "^1.0.5"
+ sax "^1.2.4"
+ symbol-tree "^3.2.2"
+ tough-cookie "^2.3.4"
+ w3c-hr-time "^1.0.1"
+ webidl-conversions "^4.0.2"
+ whatwg-encoding "^1.0.3"
+ whatwg-mimetype "^2.1.0"
+ whatwg-url "^6.4.1"
+ ws "^5.2.0"
+ xml-name-validator "^3.0.0"
+
+json-schema-traverse@^0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
+ integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
+
+json-schema@0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5"
+ integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==
+
+json-stringify-safe@~5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
+ integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==
+
+jsonlint@1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/jsonlint/-/jsonlint-1.6.0.tgz#88aa46bc289a7ac93bb46cae2d58a187a9bb494a"
+ integrity sha512-x6YLBe6NjdpmIeiklwQOxsZuYj/SOWkT33GlTpaG1UdFGjdWjPcxJ1CWZAX3wA7tarz8E2YHF6KiW5HTapPlXw==
+ dependencies:
+ JSV ">= 4.0.x"
+ nomnom ">= 1.5.x"
+
+jsprim@^1.2.2:
+ version "1.4.2"
+ resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb"
+ integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==
+ dependencies:
+ assert-plus "1.0.0"
+ extsprintf "1.3.0"
+ json-schema "0.4.0"
+ verror "1.10.0"
+
+left-pad@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.3.0.tgz#5b8a3a7765dfe001261dde915589e782f8c94d1e"
+ integrity sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==
+
+levn@~0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
+ integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==
+ dependencies:
+ prelude-ls "~1.1.2"
+ type-check "~0.3.2"
+
+lex-parser@0.1.x, lex-parser@~0.1.3:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/lex-parser/-/lex-parser-0.1.4.tgz#64c4f025f17fd53bfb45763faeb16f015a747550"
+ integrity sha512-DuAEISsr1H4LOpmFLkyMc8YStiRWZCO8hMsoXAXSbgyfvs2WQhSt0+/FBv3ZU/JBFZMGcE+FWzEBSzwUU7U27w==
+
+lodash.sortby@^4.7.0:
+ version "4.7.0"
+ resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
+ integrity sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==
+
+lodash@^4.17.10, lodash@^4.17.19:
+ version "4.17.21"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+ integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
+media-typer@0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
+ integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==
+
+merge-descriptors@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
+ integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==
+
+methods@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
+ integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==
+
+mime-db@1.52.0:
+ version "1.52.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
+ integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
+
+mime-types@^2.1.12, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34:
+ version "2.1.35"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
+ integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
+ dependencies:
+ mime-db "1.52.0"
+
+mime@1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
+ integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
+
+mime@^2.3.1:
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367"
+ integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==
+
+mkdirp@2.1.3:
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-2.1.3.tgz#b083ff37be046fd3d6552468c1f0ff44c1545d1f"
+ integrity sha512-sjAkg21peAG9HS+Dkx7hlG9Ztx7HLeKnvB3NQRcu/mltCVmvkF0pisbiTSfDVYTT86XEfZrTUosLdZLStquZUw==
+
+ms@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+ integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
+
+ms@2.1.2:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
+ integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+
+ms@2.1.3, ms@^2.1.1:
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
+ integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
+
+negotiator@0.6.3:
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
+ integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
+
+nomnom@1.5.2:
+ version "1.5.2"
+ resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.5.2.tgz#f4345448a853cfbd5c0d26320f2477ab0526fe2f"
+ integrity sha512-fiVbT7BqxiQqjlR9U3FDGOSERFCKoXVCdxV2FwZuNN7/cmJ42iQx35nUFOAFDcyvemu9Adp+IlsCGlKQYLmBKw==
+ dependencies:
+ colors "0.5.x"
+ underscore "1.1.x"
+
+"nomnom@>= 1.5.x":
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7"
+ integrity sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==
+ dependencies:
+ chalk "~0.4.0"
+ underscore "~1.6.0"
+
+nwsapi@^2.0.7:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0"
+ integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==
+
+oauth-sign@~0.9.0:
+ version "0.9.0"
+ resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
+ integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
+
+object-inspect@^1.9.0:
+ version "1.12.3"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
+ integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==
+
+object-is@^1.0.1:
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac"
+ integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==
+ dependencies:
+ call-bind "^1.0.2"
+ define-properties "^1.1.3"
+
+object-keys@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+ integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
+
+on-finished@2.4.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
+ integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
+ dependencies:
+ ee-first "1.1.1"
+
+optionator@^0.8.1:
+ version "0.8.3"
+ resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
+ integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==
+ dependencies:
+ deep-is "~0.1.3"
+ fast-levenshtein "~2.0.6"
+ levn "~0.3.0"
+ prelude-ls "~1.1.2"
+ type-check "~0.3.2"
+ word-wrap "~1.2.3"
+
+parse5@4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608"
+ integrity sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==
+
+parseurl@~1.3.3:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
+ integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
+
+path-to-regexp@0.1.7:
+ version "0.1.7"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
+ integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==
+
+performance-now@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
+ integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==
+
+pn@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
+ integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==
+
+prelude-ls@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
+ integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==
+
+proxy-addr@~2.0.7:
+ version "2.0.7"
+ resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"
+ integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==
+ dependencies:
+ forwarded "0.2.0"
+ ipaddr.js "1.9.1"
+
+psl@^1.1.28:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7"
+ integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==
+
+punycode@^2.1.0, punycode@^2.1.1:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f"
+ integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
+
+qs@6.11.0:
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.0.tgz#fd0d963446f7a65e1367e01abd85429453f0c37a"
+ integrity sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==
+ dependencies:
+ side-channel "^1.0.4"
+
+qs@~6.5.2:
+ version "6.5.3"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad"
+ integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==
+
+range-parser@~1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
+ integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
+
+raw-body@2.5.1:
+ version "2.5.1"
+ resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.1.tgz#fe1b1628b181b700215e5fd42389f98b71392857"
+ integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==
+ dependencies:
+ bytes "3.1.2"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ unpipe "1.0.0"
+
+regenerator-runtime@^0.11.0:
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
+ integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
+
+request-promise-core@1.1.4:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f"
+ integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==
+ dependencies:
+ lodash "^4.17.19"
+
+request-promise-native@^1.0.5:
+ version "1.0.9"
+ resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28"
+ integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g==
+ dependencies:
+ request-promise-core "1.1.4"
+ stealthy-require "^1.1.1"
+ tough-cookie "^2.3.3"
+
+request@^2.85.0, request@^2.87.0:
+ version "2.88.2"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
+ integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
+ dependencies:
+ aws-sign2 "~0.7.0"
+ aws4 "^1.8.0"
+ caseless "~0.12.0"
+ combined-stream "~1.0.6"
+ extend "~3.0.2"
+ forever-agent "~0.6.1"
+ form-data "~2.3.2"
+ har-validator "~5.1.3"
+ http-signature "~1.2.0"
+ is-typedarray "~1.0.0"
+ isstream "~0.1.2"
+ json-stringify-safe "~5.0.1"
+ mime-types "~2.1.19"
+ oauth-sign "~0.9.0"
+ performance-now "^2.1.0"
+ qs "~6.5.2"
+ safe-buffer "^5.1.2"
+ tough-cookie "~2.5.0"
+ tunnel-agent "^0.6.0"
+ uuid "^3.3.2"
+
+safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.2:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
+ integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
+
+"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
+ integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
+
+sax@^1.2.4:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
+ integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
+
+send@0.18.0:
+ version "0.18.0"
+ resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be"
+ integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==
+ dependencies:
+ debug "2.6.9"
+ depd "2.0.0"
+ destroy "1.2.0"
+ encodeurl "~1.0.2"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ fresh "0.5.2"
+ http-errors "2.0.0"
+ mime "1.6.0"
+ ms "2.1.3"
+ on-finished "2.4.1"
+ range-parser "~1.2.1"
+ statuses "2.0.1"
+
+serve-static@1.15.0:
+ version "1.15.0"
+ resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540"
+ integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==
+ dependencies:
+ encodeurl "~1.0.2"
+ escape-html "~1.0.3"
+ parseurl "~1.3.3"
+ send "0.18.0"
+
+setprototypeof@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
+ integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
+
+side-channel@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
+ integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
+ dependencies:
+ call-bind "^1.0.0"
+ get-intrinsic "^1.0.2"
+ object-inspect "^1.9.0"
+
+source-map@~0.1.33:
+ version "0.1.43"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346"
+ integrity sha512-VtCvB9SIQhk3aF6h+N85EaqIaBFIAfZ9Cu+NJHHVvc8BbEcnvDcFw6sqQ2dQrT6SlOrZq3tIvyD9+EGq/lJryQ==
+ dependencies:
+ amdefine ">=0.0.4"
+
+source-map@~0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+ integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+sshpk@^1.7.0:
+ version "1.17.0"
+ resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5"
+ integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==
+ dependencies:
+ asn1 "~0.2.3"
+ assert-plus "^1.0.0"
+ bcrypt-pbkdf "^1.0.0"
+ dashdash "^1.12.0"
+ ecc-jsbn "~0.1.1"
+ getpass "^0.1.1"
+ jsbn "~0.1.0"
+ safer-buffer "^2.0.2"
+ tweetnacl "~0.14.0"
+
+statuses@2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
+ integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
+
+stealthy-require@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
+ integrity sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==
+
+strip-ansi@~0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991"
+ integrity sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==
+
+symbol-tree@^3.2.2:
+ version "3.2.4"
+ resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
+ integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
+
+tablify@0.1.5:
+ version "0.1.5"
+ resolved "https://registry.yarnpkg.com/tablify/-/tablify-0.1.5.tgz#47160ce2918be291d63cecceddb5254dd72982c7"
+ integrity sha512-puOS3ef9p20DqujVs5JBCAYp5EeQke7B7+5g0SUdQKUNWkX6oM3jSzW8OD42HXowB7NTLisFGLsbYms3x+q9HA==
+
+toidentifier@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
+ integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
+
+tough-cookie@^2.3.3, tough-cookie@^2.3.4, tough-cookie@~2.5.0:
+ version "2.5.0"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
+ integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
+ dependencies:
+ psl "^1.1.28"
+ punycode "^2.1.1"
+
+tr46@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09"
+ integrity sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==
+ dependencies:
+ punycode "^2.1.0"
+
+tunnel-agent@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
+ integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==
+ dependencies:
+ safe-buffer "^5.0.1"
+
+tweetnacl@^0.14.3, tweetnacl@~0.14.0:
+ version "0.14.5"
+ resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
+ integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==
+
+type-check@~0.3.2:
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72"
+ integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==
+ dependencies:
+ prelude-ls "~1.1.2"
+
+type-is@~1.6.18:
+ version "1.6.18"
+ resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
+ integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==
+ dependencies:
+ media-typer "0.3.0"
+ mime-types "~2.1.24"
+
+uglify-js@^3.5.9:
+ version "3.17.4"
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c"
+ integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==
+
+underscore@1.1.x:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.1.7.tgz#40bab84bad19d230096e8d6ef628bff055d83db0"
+ integrity sha512-w4QtCHoLBXw1mjofIDoMyexaEdWGMedWNDhlWTtT1V1lCRqi65Pnoygkh6+WRdr+Bm8ldkBNkNeCsXGMlQS9HQ==
+
+underscore@~1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8"
+ integrity sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==
+
+unpipe@1.0.0, unpipe@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
+ integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
+
+uri-js@^4.2.2:
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+ integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+ dependencies:
+ punycode "^2.1.0"
+
+util@^0.12.0:
+ version "0.12.5"
+ resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc"
+ integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==
+ dependencies:
+ inherits "^2.0.3"
+ is-arguments "^1.0.4"
+ is-generator-function "^1.0.7"
+ is-typed-array "^1.1.3"
+ which-typed-array "^1.1.2"
+
+utils-merge@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
+ integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
+
+uuid@^3.3.2:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
+ integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
+
+vary@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
+ integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
+
+verror@1.10.0:
+ version "1.10.0"
+ resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
+ integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==
+ dependencies:
+ assert-plus "^1.0.0"
+ core-util-is "1.0.2"
+ extsprintf "^1.2.0"
+
+w3c-hr-time@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"
+ integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==
+ dependencies:
+ browser-process-hrtime "^1.0.0"
+
+webidl-conversions@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
+ integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==
+
+whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
+ integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==
+ dependencies:
+ iconv-lite "0.4.24"
+
+whatwg-mimetype@^2.1.0, whatwg-mimetype@^2.2.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf"
+ integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==
+
+whatwg-url@^6.4.1:
+ version "6.5.0"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.5.0.tgz#f2df02bff176fd65070df74ad5ccbb5a199965a8"
+ integrity sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==
+ dependencies:
+ lodash.sortby "^4.7.0"
+ tr46 "^1.0.1"
+ webidl-conversions "^4.0.2"
+
+whatwg-url@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06"
+ integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==
+ dependencies:
+ lodash.sortby "^4.7.0"
+ tr46 "^1.0.1"
+ webidl-conversions "^4.0.2"
+
+which-typed-array@^1.1.2:
+ version "1.1.9"
+ resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6"
+ integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==
+ dependencies:
+ available-typed-arrays "^1.0.5"
+ call-bind "^1.0.2"
+ for-each "^0.3.3"
+ gopd "^1.0.1"
+ has-tostringtag "^1.0.0"
+ is-typed-array "^1.1.10"
+
+word-wrap@~1.2.3:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
+ integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
+
+ws@^5.2.0:
+ version "5.2.3"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-5.2.3.tgz#05541053414921bc29c63bee14b8b0dd50b07b3d"
+ integrity sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==
+ dependencies:
+ async-limiter "~1.0.0"
+
+ws@^6.1.2:
+ version "6.2.2"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.2.tgz#dd5cdbd57a9979916097652d78f1cc5faea0c32e"
+ integrity sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==
+ dependencies:
+ async-limiter "~1.0.0"
+
+xml-name-validator@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"
+ integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==
+
+zombie@6.1.4:
+ version "6.1.4"
+ resolved "https://registry.yarnpkg.com/zombie/-/zombie-6.1.4.tgz#9f0f53f3d9a032beb7f3fe5b382146a3475a4d47"
+ integrity sha512-yxNvKtyz3PP8lkr31AYh7vdbBD4is9hYXiOQKPp+k/7GiDiFQXX1Ex+peCl4ttodu/bHZcIluJ8lxMla5XefBQ==
+ dependencies:
+ babel-runtime "6.26.0"
+ bluebird "^3.5.1"
+ debug "^4.1.0"
+ eventsource "^1.0.5"
+ iconv-lite "^0.4.21"
+ jsdom "11.12.0"
+ lodash "^4.17.10"
+ mime "^2.3.1"
+ ms "^2.1.1"
+ request "^2.85.0"
+ tough-cookie "^2.3.4"
+ ws "^6.1.2"