   uglify.uglify.gen_code(ast)
 
 
-# Soft dependencies:
-jsdom = null
-
-# CoffeeScript-generated JavaScript may contain anyone of these; when we "rewrite"
-# a function (see below) though, it loses access to its parent scope, and consequently to
-# any helpers it might need. So we need to reintroduce these helpers manually inside any
-# "rewritten" function.
-coffeescript_helpers = """
-  var __slice = Array.prototype.slice;
-  var __hasProp = Object.prototype.hasOwnProperty;
-  var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
-  var __extends = function(child, parent) {
-    for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; }
-    function ctor() { this.constructor = child; }
-    ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype;
-    return child; };
-  var __indexOf = Array.prototype.indexOf || function(item) {
-    for (var i = 0, l = this.length; i < l; i++) {
-      if (this[i] === item) return i;
-    } return -1; };
-""".replace /\n/g, ''
-
 # Shallow copy attributes from `sources` (array of objects) to `recipient`.
 # Does NOT overwrite attributes already present in `recipient`.
 copy_data_to = (recipient, sources) ->

  # Go!
  func.apply(context, [context])

  # The stringified zappa client.
  client = require('./client').build(zappa.version, app.settings)
  client = ";#{coffeescript_helpers}(#{client})();"
  client = minify(client) if app.settings['minify']

  if app.settings['default layout']
    context.view layout: ->
      doctype 5
      html ->
        head ->
          title @title if @title
          if @scripts
            for s in @scripts
              script src: s + '.js'
          script(src: @script + '.js') if @script
          if @stylesheets
            for s in @stylesheets
              link rel: 'stylesheet', href: s + '.css'
          link(rel: 'stylesheet', href: @stylesheet + '.css') if @stylesheet
          style @style if @style
        body @body

  context

# Takes a function and runs it as a zappa app. Optionally accepts a port number, and/or

          send = (code) ->
            res.contentType 'js'
            res.send code
          next()

    use = (name, arg = null) ->
      zappa_used = yes if name is 'zappa'
